フィードの情報をJSONで返すGoogleの隠れAPI
Google AJAX Feed API に用意されている google.feeds.findFeeds と google.feeds.lookupFeed というメソッドの裏でリクエストされているAPIのお話しです。
これらのメソッドは何?
- google.feeds.findFeeds
- あるキーワードに一致するフィードのリストを返してくれます。
- google.feeds.lookupFeed
- サイトのURLに関係するフィードを返してくれます。
Google AJAX Feed API はJavaScriptで動作するものなので、裏側で実際のAPIへのリクエストが発生しています。ということで、そこで使われているAPIがどんなものかとHTTP Headerを覗いてみました。
どんなAPIが動いているか
試してみたページはGoogleが用意している「Feed Discovery – Google AJAX Feed API Sample」というサンプルページです。
まず google.feeds.findFeeds のほうは次のようなリクエストが飛んでいます。
GET /uds/GfindFeeds?callback=google.feeds.Feed.FindRawCompletion&context=0 &hl=ja&q=Official%20Google%20Blogs&key=internal&v=1.0 HTTP/1.1
上のリンクからリクエスト結果を見てもらえばわかりますが、コールバック関数が指定されているため余分な引数が与えられて返ってきています。
そこで試しにcallbackパラメータを消した以下のURLをリクエストしてみました。
http://www.google.com/uds/GfindFeeds?context=0&hl=ja &q=Official%20Google%20Blogs&key=internal&v=1.0
今度はばっちりJSONのみ返されました。なお、クエリに含まれるkeyには自分のサイトで取得したAPIキーを与えてあげればいいと思います。
GoogleはAJAXなAPIをいくつか提供しているのでもっと隠れAPIはあると思いますが、「自分で発見して楽しむ」くらいにとどめておいたほうが無難かと思われます。
コメントを残す