※最新情報は@movatterでつぶやいております。
401エラーでログインできない場合の対処 (2010/06/29)
ホーム等にアクセスしても、401エラーで全くタイムラインの取得ができないという方が稀にいらっしゃったのですが、この問題を改善する方法が分かりました。
401エラーについては以前より認識しておりましたが、以下のような理由で長い間原因が不明でした。
- 全く再現性がない。
- エラーが発生する方々に共通性がない。
- システムや設定に何の変更も加えていないにもかかわらず、ある日突然エラーに見舞われる。
- 本来401以外のエラーを返すケースでも401エラーが返されるようになっていた。(以前はツイート非公開ユーザーの情報取得では403、ユーザーが存在しない場合は404などが返されていたが、今は全て401エラーになる)
- ホームなど特定のタイムライン取得でのみエラーが発生する。
OAuthではトークンという認証情報を使用します。トークンとは言わばTwitterの機能を利用するための鍵のようなものです。Movatterでは最初のログインの際にトークンを受け取り、以降はそのトークンを使用してTwitterの機能にアクセスします。
通常、トークンは一度発行されると決して変更されることはないのですが、なぜかTwitter側でこのトークンが変更されていたのがこのエラーの直接の原因でした。よって、Movatter側に保存されているトークンを破棄し、Twitterから再度トークンを取得しなおすことでこのエラーは改善します。
なぜ変わるはずのないトークンが変更になったのか、なぜ特定のページではエラーにならなかったのか等の疑問は残りますが、Twitterのバグであることは間違いないと思います。
このエラーでMovatterが使用できなくなっていた皆様にお詫びを申し上げるとともに、検証作業等にご協力いただいた皆様にお礼申し上げます。
対処方法
エラーでお困りだった方は、以下の作業を行ってみてください。
- Movatterからログアウトします。この際、必ずログアウト対象は「全ての端末」を選択してください。設定データの項目はどちらを選択しても構いません。
- ブラウザでTwitterの設定ページにアクセスし、「連携アプリ」からMovatterの許可取り消してください。
- Movatterの再ログインページで[認証URL取得]ボタンをクリックします。
- OAuthの許可確認ページ([拒否する][許可する]ボタンのある画面)で、説明文中にある「ログアウト」のリンクをクリックします。
- ユーザーIDとパスワードの入力欄が現れますので、それぞれ入力して[許可する]ボタンをクリックします。
- 後は画面の指示通りにしてMovatterにログインしてください。
7月11日追記
ここ数日、このエラーが増えているようです。また、一度この対処を行っても改善しない場合、数日経ってから再度行ったところ改善したという報告もいくつかあります。
もし、このページの対処で改善しない場合は、しばらく時間を開けてから再度操作を行ってみてください。
※ご注意
このお知らせは「401エラーでホーム等が全く表示できない問題」についての対処方法であって、投稿後やタイムライン取得で「時どき発生する401エラー」についてはまた別の問題です。
「時どき発生する401エラー」はTwitterの不安定さ原因なので、今のところ有効な対策はありません。


