BLOGTIMES
2011/01/30

PCの時間が遅れていると、Twitterにログイン出来ない

  twitter  janetter 
このエントリーをはてなブックマークに追加

Janetterのエラー画面 - PCの時間が遅れていると、Twitterにログイン出来ない

無事、PCは復旧したもののP3でTwitterにログインができなくてハマりました。現象としてはTwitter自身が落ちているのかと思ってWebからアクセスしてみると問題がなくログインも書き込みもできるので、ひょっとしてP3のバグなのかと思ってTLを検索してみるも特にそういう情報も見あたらず、ノートパソコンでP3を起動するとちゃんと読み書きできたりと非常に不可解な状態。

P3がダメなら他のクライアントをつかってみればいいじゃんということで、Janetterを起動してみるとこちらもエラーが。でも、Janetterには「PCの内部時計を確認してください」というヒントがあって助かりました。今回の電源交換に先立って、マザボのCMOS用のボタン電池を交換したので、BIOSの時間がリセットされていたのでした。ということで、正しい時間をセットみたらあっさりとログインできるようになってしまいました。

PC の時計が遅れていたら Twitter 専用クライアントは使えない - ぐま あーかいぶ

認証に使われてる OAuth / xAuth プロトコルがタイムスタンプも利用する仕様になっていて、このタイムスタンプがあまりに古いと Twitter では不正なリクエストとしてエラーにされてしまいます。 専用クライアントではタイムスタンプを PC 内蔵時計から得ているので、時計が狂ってるとエラーになってしまうのはそういうわけです。 これは OAuth の仕様で「タイムスタンプが古いリクエストは拒否ってもいいよ」となっていることを受けての Twitter 側の仕様のようです。

xAuthはプロトコルでタイムスタンプを使っているんですね。 OAuth / xAuth はこれまで一度も実装を行ったことがなかったので盲点でした。


    トラックバックについて
    Trackback URL:
    お気軽にどうぞ。トラックバック前にポリシーをお読みください。[policy]
    このエントリへのTrackbackにはこのURLが必要です→https://blog.cles.jp/item/4043
    Trackbacks
    このエントリにトラックバックはありません
    Comments
    愛のあるツッコミをお気軽にどうぞ。[policy]
    古いエントリについてはコメント制御しているため、即時に反映されないことがあります。
    コメントはありません
    Comments Form

    コメントは承認後の表示となります。
    OpenIDでログインすると、即時に公開されます。

    OpenID を使ってログインすることができます。

    Identity URL: Yahoo! JAPAN IDでログイン