Extension一覧

Chrome拡張 Googleアナリティクス オプトアウトをちょこっと改造

サーバー移転日記はひとまず中断して忘れる前に備忘録を。

アクセス解析に大変便利なGoogleアナリティクス

「解析するほどアクセス数ないだろ!」という声は聞き流し、自分がアクセスした分は解析から除外したいなーと思い立つ。

WordPressであればUltimate Google Analyticsなどを入れておけばある程度回避してくれるのだけど、ログインしていない状態だとおそらくダメだろう。普通のホームページなどでは勿論使えないし。

そこで登場するのがGoogleアナリティクスに情報を送信しない為のアドオンです。

Google アナリティクス オプトアウト アドオン

ただ、これを入れると全てのアナリティクスへの送信が抑制される模様。

「お前の情報は俺のモノ。俺の情報は俺のモノ。」

自分はデータを収集しておきながら他人にはやらんというジャイアニズムがいささか心を痛める。
こういうご時世なのでプライバシーポリシーの問題とか色々あるんでしょうけど・・・

さて、これを使って自サイトの時だけ除外できないか検討。
続きを読む


Chrome Extension で Gmail フィードをチェック

Chrome Extensions API で遊んでいるときに次の様な現象を確認した。

「ブラウザにてアカウントAでGmail にログインした状態のまま、アカウントBのGmailフィードをXMLHttpRequestで取得すると、アカウントAのエントリーが返ってくる。」

何故?セッションとかクッキーの問題??

とりあえずググるとフィードを取得するURLが2種類ある事に気が付く。

  • https://mail.google.com/mail/feed/atom
  • https://mail.google.com/gmail/feed/atom

更に、XMLHttpRequestでリスエストのメソッド(“GET” or “POST”)の違いでも挙動が変わる模様。

検証の結果

フィードのURL リスエストのメソッド 結果
https://mail.google.com/mail/feed/atom GET ×
https://mail.google.com/mail/feed/atom POST ×
https://mail.google.com/gmail/feed/atom GET ×
https://mail.google.com/gmail/feed/atom POST

ようするに、gが付いてる方のURLに、(sendが空でも)”POST”でリスエストすれば良いみたい。
仕様をきちんと理解していれば当然なのか、「穴」的な処理なのかはわかりませんが、急に仕様が変わるコトもありえるGoogleさんなので今現在は可能というコトで理解しておこう。

以下、ソース。

function getGmailFeed(mail, pass, callback) {
	var url = "https://mail.google.com/gmail/feed/atom";
	var xhr = new XMLHttpRequest();
	xhr.open("POST", url, true, mail, pass);
	xhr.onreadystatechange = function() {
		if (xhr.readyState == 4) {
			if (xhr.status == 200) {
				if (callback) {
					callback(xhr.responseXML);
				}
			}
		}
	}
	xhr.send();
}

BASIC認証をHTTPヘッダで処理するもよし。

	xhr.open("POST", url, true);
	xhr.setRequestHeader("Authorization", "Basic " + window.btoa(mail + ":" + pass));

Content-Typeを指定するもよし。

	xhr.setRequestHeader("Content-type", "application/atom+xml");

以上、備忘録でした。


スポンサーリンク