Hatena::ブログ(Diary)

今日もスミマセン。

Do you follow me?

2009-05-17

livedoor Reader のピン関連のAPIについて

一筋縄でいかなかったのでメモっとく


ピン一覧の取得

url
http://reader.livedoor.com/api/pin/all
メソッド
post
リクエスト
なし
レスポンス(JSON)
[
  {
    created_on : (ピンの作成日時をシリアライズ化した数値?)
    link : リンク
    title : ページのタイトル
  },
  ...
]

ピンの削除

url
http://reader.livedoor.com/api/pin/remove
メソッド
post
リクエスト
  • ApiKey:APIキー
  • link:削除対象(元記事)のURL
レスポンス(JSON)
??

ApiKeyについて

removeに必要なApiKeyは、Cookieの"reader_sid=xxxx"ってやつのこと。

Firefox拡張(Vimperatorプラグインとかも含む)だと、以下のようなコードで取得できる。

  function getLDRApiKey() {
    var uri = Cc["@mozilla.org/network/io-service;1"]
                .getService(Ci.nsIIOService)
                .newURI(LDR_DOMAIN, null, null);
    var cookie = Cc["@mozilla.org/cookieService;1"]
                .getService(Ci.nsICookieService)
                .getCookieString(uri, null);
    var apiKey = cookie.match(/reader_sid=([^;]+)/);
    return apiKey ? apiKey[1]: null;
  }

livedoor Reader でのAPI呼び出しには、固定的なパラメタとしてApiKeyが渡されるようになっているっぽい。

しかし、/api/pin/all のような一部のAPIについては、ApiKeyを渡さなくてもレスポンスを返してくれるものもある。(たぶん、Cookieの値だけで通してる?)

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証