0

私はTwitterのどこでもAPIを使用して、ユーザーがTwitterでサインインし、Twitterデータを取得してテーブルに保存できるようにしています。TwitterのどこでもAPIは間もなく期限切れになるため、この機能をoauthに移行するにはどうすればよいですか。

私のJavaScript:

<script src="https://platform.twitter.com/anywhere.js?id={{twitterappid}}&v=1"></script>
<script type="text/javascript">
var twt_connected = 0;
var Uuid = '2334443224';
$(function(){
if ($('#twtlogin').length) {
  // do something
twttr.anywhere(function(twitter) {
if(twitter.isConnected()){
//alert('Welcome, you are connected');
currentUser = twitter.currentUser;
screenName = currentUser.data('screen_name');
jQuery.ajax({url:"/twitter/Uuid="+Uuid+"/" ,
             type: "POST",
             data: {user: JSON.stringify(currentUser) },
             dataType: "json",
             success: function(result) {
                        }});
document.getElementById("twtlogin").innerHTML = '<img src="/images/icon_tconnected.gif" width="153" height="37" alt="Connected" />';
 }
 });
 }
 });

$("#login").click(function(e){
    e.preventDefault();
    if (twt_connected == 0){
    $.post("/twt-click-time/Uuid="+Uuid+"/","clicked",function(data){})
    twttr.anywhere(function (T) {
             T.bind("authComplete", function (e, user) {
            document.getElementById("twtlogin").innerHTML = '<img src="/images/icon_tconnected.gif" width="153" height="37" alt="Connected" />';
             twt_connected = 1;
             currentUser = T.currentUser;
             screenName = currentUser.data('screen_name');
             jQuery.ajax({url:"/twitter/Uuid="+Uuid+"/" ,
                         type: "POST",
                         data: {user: JSON.stringify(currentUser) },
                         dataType: "json",
                         success: function(result) {
                        }});

             });
             T.signIn();
             });
             }
             });

</script>

バックエンドでdjangoを使用しています。

4

1 に答える 1

1

私は今フラスコのためにこれをやっています。最も簡単なオプションは、サーバー側のoauth呼び出しをプラグインすることです。

かなり大量のコードなので、ここにすべてをコピーして貼り付けることはしませんが、simplegeoのoauth2のgithubページには、実際には「Twitterでdjangoにログインする」ウォークスルーがあります。

いくつかのオプションを試した後、私はtwythonが一番好きだと思います。oauthの最初のステップを実行するのはこれだけです。

from twython import Twython

t = Twython(app_key='key',
            app_secret='secret',
            callback_url='http://google.com/')
auth_props = t.get_authentication_tokens()
print auth_props
于 2012-12-17T04:41:51.607 に答える