Twitter APIの仕様変更に伴う不具合の頻発
- 2012/10/16 00:00
- カテゴリー:タナウツSEO・SMO, サイト改造裏話
TwitterのAPIが仕様変更となったことに伴い、ブログのTwitterウィジェットでツイートが取得できなくなったなどの不具合が頻発しています。
当ブログでも、Twitterのアカウントからツイートを取得するウィジェットを使用していたのですが、先週の木曜日頃から突然ツイートが表示されなくなるという問題が発生したため、対処方法を調べていました。
調査の結果、暫定的にTwitter APIの参照先アドレスを、以下のよう変更すれば良いことが判明↓
<script type="text/javascript" src="https://www.tanautsu.net/blog/skin/blogger.js"></script>
<script type="text/javascript" src="http://twitter.com/statuses/user_timeline/tanautsunet.json?callback=twitterCallback2&count=75"></script>
↓
<script type="text/javascript" src="https://www.tanautsu.net/blog/skin/blogger.js"></script>
<script type="text/javascript" src="http://api.twitter.com/1/statuses/user_timeline/tanautsunet.json?callback=twitterCallback2&count=75"></script>
※赤文字部分を青文字部分に変更。
※上記で紹介しているHTMLタグ内における「<」「>」「&」は、全て半角から全角に変換しています。
ただし、これはあくまでも2013年3月まで限定の暫定的な対処方法でしかなく、それ以降も継続して使用したい場合はOAuthによる認証が必要とのこと。
何故急にこんな問題が発生したのか当初は疑問だったのですが、そう言えば2ヶ月ほど前にこんな記事が掲載されていたなぁ、ということをふと思い出しました↓
http://www.itmedia.co.jp/news/articles/1208/17/news037.html
> 米Twitterは8月16日(現地時間)、数週間後に予定しているTwitter APIのバージョン1.1へのアップデートと開発者向けガイドライン「Developer Rules of the Road」の改定について説明した。クライアントアプリのユーザー数に上限を設けるなど、サードパーティーにとって厳しい内容になっている。
>
> 開発者はAPIのアップデート後、半年以内にこの改定に対応する必要がある。
>
> 同社のコンシューマープロダクト担当ディレクター、マイケル・シッピー氏は6月末に“Twitterのユーザー体験の一貫性を保つため”サードパーティーによるAPI利用に関するガイドラインを厳格にすると発表しており、今回その内容を具体的に説明した。
>
> まず、すべてのAPIで、アクセスするのにOAuthによる認証が必要になる。従来はアプリケーションについて、TwitterはIPアドレスしか認識できなかったが、ボットやスパムを防止するために認証プロセスを追加したとしている。
>
> また、APIを実行できる回数が、従来は認証が必要なAPIへのすべてのアクセスの合計上限が1時間当たり350回だったのが、一部のAPI(タイムラインの表示など)は1時間当たり720回に、それ以外のほとんどのAPIは1時間当たり60回にと、APIごとに上限が設定されるようになる。
>
> Developer Rules of the Roadの改定では、Display GuidelinesがDisplay Requirementsになる。つまり、従来は必ずしも厳格に守らなくてもいいガイドラインだったものが要件になり、守らなければAPIを利用できなくなる。6月末にLinkedInがツイートの表示を終了したのは、この改定に沿ったものだったようだ。
>
> また、クライアントアプリのユーザー数の上限を10万人にする(超える場合はTwitterの許可が必要)。現在既に10万人以上のユーザーがいるアプリについては、現在のユーザー数の200%まではユーザーを増やすことができるが、いずれの場合も上限に達したら、後はサービス提供を継続することはできてもTwitterの許可なしではユーザー数を拡大できない。
>
> つまり、例えば友達が使っている人気のサードパーティーアプリに後からサインアップしようとしても、そのアプリが制限に達している場合は使えないということになる。
>
> このようにサードパーティー製アプリによるAPI利用を厳格にする一方、同社は6月に発表した「Twitter Cards」の利用を開発者に勧めている。Twitter Cardsは、開発者のコンテンツをツイートする場合の表示を管理できる機能で、これにより、開発者は自分のWebサイトへのトラフィックを増やせるとしている。Twitterは、ユーザー体験の一貫性を保つために、ユーザーには極力純正アプリを使ってもらい、サードパーティーにはアプリ作成ではなく、Twitter内でのプレゼンス拡大という形での参加を求めているようだ。
記事中にあるTwitter APIのバージョンアップ予定時期とも合致しますし、今回の不具合はこのバージョンアップに伴う副作用ということになるのでしょう。
ブログ用ウィジェット以外でも、今回のバージョンアップ以前にmixiやGREEでTwitter外部連携を行っていた場合、設定が強制的に解除されてしまうケースも確認されました。
Twitter社による仕様変更でそのサービスを受ける側が自主的な対応を余儀なくされる、というのは何とも理不尽な話ではあるのですが、Twitter絡みの提供サービスを受けている方は、何らかの対応が必要なのではないかと思います。
Twitter APIの仕様変更は、Twitterと外部連携している個人ブログやサービス提供サイト等では死活問題もいいところですね。
対処法が分かってしまえば修正自体はそれほど手間のかかるものではありませんが、実際はその「分かるまで」が問題なわけで。
放置状態のブログやサービス提供サイトでは、何もできないまま機能不全に陥らざるをえないでしょうし、今回の問題に対応できないサイトやブログは意外に多いものとなりそうです。
2013年3月になればまた少なからぬ混乱が巻き起こる可能性が濃厚ですし、今回のバージョンアップで今後一体どうなっていくのでしょうかね、Twitterは。