クッキーAPIを提案します。 動機は、「PREF」Cookieをそのままにして、追跡を減らすためにgoogle.comで「NID」Cookieを削除することです。 document.cookie
の問題は、「NID」Cookieが「.google.com」に属しているため、「PREF」Cookieのみが表示され、他には何も表示されないことです。 Firefoxもこの機能をネイティブにサポートしていないようで、ドメインごとに無効にするだけです。
この場合、アクセスできるドメインに制限がある可能性のある一部のAPIが役立ちます。
NIDはhttponly = trueであるため、document.cookieには表示されません。 ただし、独自のダミー値でオーバーライドできると思います。
現在のドメインでは上書きできますが、google.comドメインでは上書きできません。 クッキーはユーザーの追跡によく使用されるため、これはまだ検討できると思います。
この問題を再開できますか? Cookieを上書きしたとしても、たとえば、現在のページにCookieを一覧表示する方法はありません。 http Cookieへのユーザースクリプトアクセスは、たとえばGM_cookie()
apiを使用することにより、これを解決できます。
もちろん、理論的には可能です。 しかし、Greasemonkeyの哲学は、「HTML5」APIの使用を奨励し、カスタムAPIの使用を思いとどまらせるために、Web自体がプラットフォームとして行ってきた前進を受け入れることでした。 強力なケースが役立ちます。
(IMOサイトは誤ってHttpOnlyを使用していません。これは意図的に実装されたセキュリティ機能です。したがって、ケースを作成するのはおそらく難しいでしょう。また、低レベルのAPIにアクセスする必要があり、サイト固有の拡張機能を作成することを妨げるものは何もありません。結果としてのみFirefoxになることをいとわない。)
そのような古い問題でコメントしてすみません。
私はあなたがあなた自身のダミー値でそれを上書きすることができるに違いない
私はそれを試しましたが、それは不可能のようです。 ブラウザはHttpOnlyフラグ付きのCookieを保持していますが、JSからアクセスしたり上書きしたりすることはできません。
強力なケースが役立ちます
そのようなケースがどれほど強力かはわかりませんが、特定のサイトでの無意味なリダイレクトを回避するために、ユーザースクリプトからCookieを削除する必要があります。 また、サーバーサイドでHttpOnlyフラグが設定されているため、現在は不可能です。
弱い例のシナリオを提示します。 たくさんのCookieがあるページでスクリプトを作成しています。 1つのCookieにより、奇妙なデザインの選択により、Webサイト全体のレンダリングが異なります。 Cookieは、どこからでもログアウトすることなく、Webサイトの特定の部分にログインすることによって設定されます。 このCookieがhttponlyフラグで設定されている場合、標準のdocument.cookieメソッドを使用して修正することはできません。 httponlyで保護されているCookieを設定/上書き/削除できるGM_cookieなどがあれば便利です。
document.cookie
では不十分なCookie操作を実行したいという状況に遭遇しました。 これをうまく行う方法について考慮すべきことがたくさんあります...
私はここを見ることを提案します(一例のみ):
https://dxr.mozilla.org/mozilla-central/source/devtools/shared/gcli/commands/cookie.js
( nsICookieManager2 )
最も参考になるコメント
document.cookie
では不十分なCookie操作を実行したいという状況に遭遇しました。 これをうまく行う方法について考慮すべきことがたくさんあります...