0

ポップアップを使用してクライアントにログインするために、新しい Twitter @anywhere API を使用しています。API ドキュメントはこちら https://dev.twitter.com/docs/anywhere/welcome#auth-events

私は彼らのAPIの非常に単純な例を作成しましたが、ポップアップで「接続」を押した後、このスクリーンショット http://cl.ly/0A321R1Z2W1o3v0P0t0zに見られるように、Twitterは「技術的に何かが間違っています」と言うだけです

これを行うための私のセットアップは次のとおりです(すでにTwitterでアプリを作成していることに注意してください)

var api = "http://platform.twitter.com/anywhere.js?id={MY_API_KEY}&v=1";
$.getScript(api,function() {

            twttr.anywhere(function (tw) {

                console.log("tw",tw);

                // bind auth compelte event
                tw.bind("authComplete", function (e, user) {
                    console.log("tw auth complete",e,user);
                });

                // calling sign in triggeers the above event
                tw.signIn();

            }); 

        });

ポップアップが開き、Twitter にサインインできるようになり、接続を押すと、Twitter から奇妙なエラーが発生します。

何がうまくいかないのでしょうか?

ありがとう!

更新 - 同様の問題を抱えている人々のこのページを見つけましたが、彼らが提供した解決策は何も変えませんでした.

https://dev.twitter.com/discussions/1286

また、私が使用しているドメインはhttp://changeup.dev であり、ローカル ドメインであることに注意することが重要かもしれません。私はすでにホストファイルにセットアップしています。

4

1 に答える 1

2

そう、私はそれを理解しました。アプリのコールバック URL が (開発者ページに) 必要ありませんが、必要はありません。コールバック URL も、承認済みドメインと一致する必要があります。

次に、アプリで、コールバックが呼び出す URL に Twitter API を含める必要があります。THEN、および THEN のみがウィンドウを自動的に閉じ、authComplete コールバックを実行します。

ログインしていたのと同じページでこれを行いました

if(location.hash && location.hash.indexOf("oauth_access_token") != -1) {
于 2012-05-10T15:13:21.773 に答える