[9] はてなスターは、株式会社はてなのWebサービスです。
[4]
https://s.hatena.ne.jp/entries.json
は
HatenaStar.js
の初期表示で使われています。
スター数が多い時に数字で省略表示されますが、
それに相当する情報が入っています。つまり全件取得には使えません。
[5]
query に callback
引数を指定すると、
指定された関数名の JSONP になります。
[6] CORS に対応しており、任意の起源からアクセスできます。
[7]
https://s.hatena.ne.jp/entry.json
は省略されずにすべてのスターの情報が入っています。
(ただし count
を使ってまとめられていることはあります。)
[8]
query に callback
引数を指定すると、
指定された関数名の JSONP になります。 CORS には対応していません。
[24]
Hatena::Star::Mobile
ははてなスターの
JSON API
呼び出しをラッピングした
Perlモジュールです。
[10] はてなにログインしている状態では、任意の起源の JavaScript コードから、 JSON API を通じてそのはてなID の権限でスターの情報を取得したり、操作したりできます。つまりこれは CSRF 脆弱性です。
[11] この問題は初期から第三者により報告されていますが、修正されていません。 mixi の足跡機能のように使っている外部サイトもあります。
[17] はてなスターの s.hatena.ne.jp
には HTTPS でもアクセスできます。
しかし素のHTTPでもアクセスでき、 HSTS には対応していません。
[18] これはスターをつける対象のサイトが HTTPS であっても変わりありません。 また素のHTTPのアクセスで HTTPS の URL のスター情報を取得することができます。
[19] つまり HTTPS を使って個別のアクセスを安全にすることはできても、 スターの情報 (はてなID、スターコメント、引用文など) は安全とはいえないことになります。従って、 HTTPS の Webサイトでは、 はてなスターを利用するべきではありません。
[22] 外部サイトでは、 第三者クッキーによるログインが必要になるため、 Webブラウザーによっては動作しません。 (最近の Webブラウザーは規制を厳しくする方向にあります。)
[23] よって外部サイトでは使うべきではありません、というか使うのは困難です。
[14] はてなスターSiteConfig作成方法とは - はてなキーワード ( 版) http://d.hatena.ne.jp/keyword/%A4%CF%A4%C6%A4%CA%A5%B9%A5%BF%A1%BCSiteConfig%BA%EE%C0%AE%CA%FD%CB%A1