おかしくなる現象
- facebook.phpで発行されるURLへアクセスするとPCページが表示される
- そのPCページでログインしてみても次のページへ進めない
- モバイル用のURLは http://m.facebook.jp/だったはずだが置き換えてもダメ
- ただログインするだけならば可能。アプリ認証が出来ない。
「ガラケーは対応していません」って書く寸前でした。。。。その時、気になる記事を発見!
追記2011/08/17「あー!結局ダメでした!」以下ウハウハな気分で書いた記事。
facebook connectのモバイル対応 – yo-11-06の日記
僕の長年のウェブプログラミング経験がこれはリダイレクトに問題があると言っている。という訳で今度はファイヤーフォックスでUA誤魔化してアクセスしてみる!!
http://m.facebook.com/login.php?app_id=YOUR_APP_ID&cancel….みたいなページに最終的にリダイレクトされてた。
で、最終的なページをQRで読み込んでアクセスしてみたら携帯のデザインで認証ページが出てきた!!
という訳でファイヤーフォックスでlogin.phpを表示してそのURLをそのまま認証用のURLに使えばオッケーだよ!って話。
おそらくですが、Facebook側でガラケーだった場合の置き換え処理が間違っているのでは…!?という疑問です。
既存のガラケーでは(古い携帯のみ?ソフトバンクだけかな?)、通信先で何回もリダイレクトを繰り返されると読込を停止するような事がありました。ま、何か間違っているのでしょう。正しく動いていません。
解決方法
- 通常作られる「https://www.facebook.com/dialog/oauth?client_id=xxxxxx&redirect_uri=…」を「https://m.facebook.com/dialog/oauth?client_id=xxxxxx&redirect_uri=…」に置き換える
- 置き換えたURLにPCブラウザでアクセスする(User AgentはPCのままでもOKでした)
- アクセスすると自動リダイレクトされ「http://m.facebook.com/login.php?app_id=xxxxxx&cancel=…」といったとても長いURLが表示される。
- これをコピーして携帯用ソースとしてそのままペーストする(戻り先のURLぐらいは自動変換行けるかもね)
- ガラケーで確認するとアプリ認証が可能となる!
※追記110822:アプリ認証を済ませているガラケーのみ正常に次の画面へ進める
私が確認したのはauのガラケーのみですが、アプリ認証ができています!
うーん、Facebookのバグのような気がしますね。
とにかく、解決へ導いてくれたid:yo-11-06:20110203さんの記事に感謝です。
コメントを残す