【问题标题】:twitter4J, jquery, coldfusion integrationtwitter4J、jquery、coldfusion 集成
【发布时间】:2011-08-21 18:28:12
【问题描述】:

我正在使用 Twitter4j 并尝试获取用户的 Twitter 访问令牌并将其存储到数据库中,以便以后发布推文。我想完全用 jQuery 和 ajax 默默地做到这一点。

我有一个具有必要基本功能的 cfc。例如下面的 jquery 调用了一个 cfc 函数,该函数生成 requestURL 并弹出一个 Twitter auth 窗口。

$(".cbLinkTwitter").live("click", function(e) {
     $.getJSON(cfcRoot + "/twitter.cfc?method=getRequestURL&returnformat=json, {"user_id":user_id}, function(res,code) {
          openWindow(res);
     });
     e.preventDefault();
});

这一切都很好。但是在用户授予授权后,我如何使用 jQuery 来捕获返回的令牌。它需要返回到指定的回调 URL,但如果可能的话,我希望它以静默方式返回数据。这可以用 iframe 完成吗?

我可能要求的太多了,但如果有人做过类似的事情,我真的很感激朝着正确的方向推进。

【问题讨论】:

    标签: jquery coldfusion twitter4j


    【解决方案1】:

    看看here

    本网站的做法是使用getOAuthRequestToken() 生成一个RequestToken,然后在RequestToken 上调用getToken()getSecretToken() 并将这两个变量存储在SESSION 范围内。然后使用getAuthorizationURL()生成授权URL

    在用户批准 OAuth 请求后,您需要生成一个 Access Token 并存储这两种方法的结果:AccessToken.getToken()AccessToken.getTokenSecret()

    因此,为了回答您的问题,我认为它会起作用的方式是在生成和返回授权 URL 之前存储您的 oAuthRequestTokenoAuthRequestTokenSecretSESSION 范围。

    当您在 Twitter 上注册您的应用程序时,您需要指定一个回调 URL。这是用户在 Twitter 上自动化您的应用程序后将被重定向到的页面。

    当回调 URL 被调用时,只需从存储在SESSIONsope 中的请求令牌创建一个访问令牌。

    <cfset AccessToken = Twitter.getOAuthAccessToken(Session.oAuthRequestToken,Session.oAuthRequestTokenSecret) />
    

    并将 Token 和 TokenSecret 存储在数据库中:

    <cfset Token = AccessToken.getToken() />
    <cfset TokenSecret = AccessToken.getTokenSecret() />
    

    希望对你有帮助

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-05-27
      • 2013-07-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-04-27
      • 2011-06-05
      相关资源
      最近更新 更多