Monthly Archives: 3月 2010

You are browsing the site archives by month.

twitterのAPIを使用して趣味をつぶやくサイトを構築中、OAuth認証でアプリケーションの追加をしたんだけど、

タイトルと同じ「Read-only application cannot POST」がapacheのエラーログに出てた。

悩んだ挙句解決方法がわかったのでメモ。

  1. Twitterにログインして追加したアプリケーションを削除
  2. もう一回再度登録。 ※この際に間違いなく「Read & Write」をチェックする

以上でうまくいくはず

まずは、検索系APIを使うことになったので、検索系APIをご紹介。

URL

リクエストURLは以下のアドレスとなる。

http://search.twitter.com/search.format

format部分には、jsonかatomを指定する。

私はjsonを使わないので、XML形式を前提として話を続けます。

atom形式を使うので、以下のURLになります。

http://search.twitter.com/search.atom

諸条件

  • 認証:不要
  • Method: GET
  • API制限:対象

引数

q=検索文字列 (必須)

http://search.twitter.com/search.atom?q=twitter

  • twitterという文字列を含むつぶやきを取得
  • 日本語を検索する場合は、UTF-8でURLエンコードした文字列を渡す

lang (オプション) – 言語指定

検索対象となる言語を指定する。ISO639-1に準拠した文字列を指定します。ちなみに日本語は「ja」。

http://search.twitter.com/search.atom?q=twitter&lang=ja

  • 日本語ユーザーで、twitterが含まれるつぶやきを検索

rpp (オプション) – 発言数指定

検索ページ1ページ分に含まれる発言数を指定する。

http://search.twitter.com/search.atom?q=twitter&rpp=20

  • twitterという文字列を含んだものを1ページあたり20件取得する
  • 最大100まで指定可能です

page (オプション) – ページ番号

ページ番号を指定する。(rpp単位で取得することになる)

http://search.twitter.com/search.atom?q=twitter&rpp=20&page=3

  • twitterと言う文字列を含むつぶやきの1ページあたり20件表示の場合の3ページ目を取得する
  • rpp × page は最大で1500まで
  • ページ始まりは0ではなく、1

since_id (オプション)

指定したメッセージIDより新しいつぶやきを取得する。

http://search.twitter.com/search.atom?q=twitter&since_id=29384756

  • twitterと言う文字列を含むつぶやきのうち、メッセージID「29384756」以降を取得する。

参考

枝豆はなんと、

大豆

だということを最近知った<?o?>

大豆

大豆↑