ChromeはCookieの変更を監視し、値を割り当てます

ChromeはCookieの変更を監視し、値を割り当てます

次のコードは、Chrome による Cookie の変更の監視を導入しています。コードは次のとおりです。

/**
* クッキーの変更を監視する */
chrome.cookies.onChanged.addListener(function(changeInfo){
	// cookies.onChanged はすべての Cookie を監視するため、Web サイト独自の Cookie のみをフィルタリングして処理する必要があります。
	if(GhomepageDomain == changeInfo.cookie.domain){
		var cookieNameReg = /[AZ]/;
		var cookieInfo = changeInfo.cookie;
		if(!cookieNameReg.test(cookieInfo.name)){
			//すべての小文字のクッキー名をプラグインにコピーします
			if(changeInfo.removed){
				// クッキーを削除する
				chrome.cookies.remove({
					url: Gplugin、
					名前: cookieInfo['name']
				},関数(_cookie){
					// console.log('Cookie を削除、再取得',_cookie);
				 	// ユーザー情報を取得します(1);
				});
			}それ以外{
				// クッキーを設定する
				chrome.cookies.set({
					url: Gplugin、
					名前: cookieInfo['name'],
					パス: '/'、
					値: cookieInfo['value'],
					有効期限: cookieInfo['expirationDate'],
					セキュア: true、
					sameSite: 'no_restriction', // クロスドメインCookieをブロックしない
				},関数(_cookie){
					// console.log('Cookie を設定、再取得',_cookie);
					// ユーザー情報を取得します(1);
				});
			}
		}
	}
});

ps: CHROME 拡張機能のノートの Cookie 監視と割り当ての問題を見てみましょう。

Cookie の監視および割り当て操作には、マニフェスト ファイルで権限を宣言する必要があります。
権限は次のとおりです。

{
	"permissions": [ "cookies", "*://*.cookies.com/* を操作するドメイン名" ],
}
/**
* クッキーの変更を監視する */
chrome.cookies.onChanged.addListener(function(changeInfo){
	// cookies.onChanged はすべての Cookie を監視するため、Web サイト独自の Cookie のみをフィルタリングして処理する必要があります。
	if(GhomepageDomain == changeInfo.cookie.domain){
		var cookieNameReg = /[AZ]/;
		var cookieInfo = changeInfo.cookie;
		if(!cookieNameReg.test(cookieInfo.name)){
			//すべての小文字のクッキー名をプラグインにコピーします
			if(changeInfo.removed){
				// クッキーを削除する
				chrome.cookies.remove({
					url: Gplugin、
					名前: cookieInfo['name']
				},関数(_cookie){
					// console.log('Cookie を削除、再取得',_cookie);
				 	// ユーザー情報を取得します(1);
				});
			}それ以外{
				// クッキーを設定する
				chrome.cookies.set({
					url: Gplugin、
					名前: cookieInfo['name'],
					パス: '/'、
					値: cookieInfo['value'],
					有効期限: cookieInfo['expirationDate'],
					セキュア: true、
					sameSite: 'no_restriction', // クロスドメイン Cookie をブロックしません。 secure と sameSite が利用できない場合、iframe ページは Chrome 80 以降で Cookie を使用できません。
				},関数(_cookie){
					// console.log('Cookie を設定、再取得',_cookie);
					// ユーザー情報を取得します(1);
				});
			}
		}
	}
});

注: secure と sameSite を理解していない方は、Cookie の SameSite 属性に関する Liao Xuefeng のブログをお読みください。

Chrome の Cookie 変更監視と割り当て問題に関するこの記事はこれで終わりです。Chrome の Cookie 変更監視に関するより関連性の高いコンテンツについては、123WORDPRESS.COM の以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • jsは変更されていないツリーメニューを更新するためにクッキーを使用します

<<:  CSS で overflow-y: visible; が機能しない理由の分析と解決

>>:  Kylin V10 への zabbix-agent のインストール手順

推薦する

Linux で Bash 環境変数を設定する方法

Shell は C 言語で書かれたプログラムであり、ユーザーが Linux を使用するための橋渡しと...

ウェブデザインにおけるテキスト入力ボックスのパラメータの説明

一般的なゲストブック、フォーラムなどでは、テキスト入力ボックスが使われています。これは HTML 言...

大量のデータをMySQLにインポートする際に発生する問題と解決策の分析

プロジェクトでは、SQL を使用してデータ分析を実行するために、大量のデータをデータベースにインポー...

Nginx セッション損失問題の解決策

nginx をリバース プロキシ tomcat として使用する場合、セッション損失が発生する可能性が...

TomcatコンポーネントはWebサーバーのアーキテクチャの進化を示しています

1. tomcat とは誰ですか? 2. Tomcat は何ができますか? Tomcat は Web...

Linux でバックグラウンドで実行中のプログラムを表示して終了する方法

1. .shファイルを実行する./sh ファイルを使用して直接実行することもできますが、現在のターミ...

高度なクローラー - JS 自動レンダリングのための Scrapy_splash コンポーネントの使用

目次1. scrapy_splash とは何ですか? 2. scrapy_splashの役割3. s...

MySql バッチに挿入するときにデータの重複を避ける方法

目次序文1. ignore を挿入2. 重複キーの更新時3. を置き換える要約する序文Mysql は...

Linuxオンラインソフトウェアgccをオンラインでインストールする方法

Linux オンラインインストール関連コマンド: yum install: すべてインストールyum...

Vue 学習 - VueRouter ルーティングの基礎

目次1. Vueルーター1. 説明2. 選択したルートのレンダリング: 3. 基本的な動作原理2. ...

Linux での nginx のインストール、展開、使用方法の詳細な説明

目次1. ダウンロード2. 展開3. Nginxログ関連の設定4. ファイルダウンローダーとして n...

IE6のバグと修正は予防戦略です

元記事:究極の IE6 チートシート: 25 以上の Internet Explorer 6 のバグ...

JSインターセプト文字列の3つの方法の詳細な説明

JS には、文字列をインターセプトするための 3 つのメソッド、 slice() 、 substri...

仮想マシンUbuntu 16.04がインターネットに接続できない問題の解決策

Ubuntu をインストールしたばかりですが、開いたときにネットワーク接続がありませんでした。右上隅...

Dreamweaver8を使用してウェブサイトのファイルをチェックして整理する方法

Dreamweaver8 を使用して独自の Web サイトを作成する目的は何ですか?インターネットに...