我对推特很陌生。@anywhere登录功能是否旨在将我们的网站与Twitter登录相结合?就像Facebook连接一样?如果是,回调url的用途是什么,应该提供什么回调url?
我尝试将这个@anywhere登录功能添加到我的站点中,并在localhost / 127.0.0.1站点上测试它。我使用以下代码
twttr.anywhere(function (T) {
T("#twitter-login").connectButton({
authComplete: function(user) {
//triggered when auth completed successfully
alert('test login complete');
currentUser = T.currentUser;
var userInfo = document.getElementById('user-info');
userInfo.innerHTML =
'<img src="' + currentUser.data('profile_image_url') + '"/>'
+ currentUser.data('screen_name');
}
});
});如果我不提供任何回调url,在授权用户之后,Twitter将给出一个
Sorry, something went wrong.
The provided callback url http://localhost:9000/ is not authorized for the client registered to 'http://127.0.0.1:9000'.因此,我提供了一个自定义回调url和下面的代码
twttr.anywhere.config({ callbackURL: "http://127.0.0.1:9000"});添加了该代码后,没有出现错误,但最终打开了同一个页面的两个选项卡。一个是我用来登录的页面,另一个是回调url页面。此外,"authComplete:"部分中的代码也不会运行,也不会显示警报。
我做错什么了吗?
谢谢
发布于 2012-05-04 16:06:07
Twitter @Anywhere用户域来验证回调url。
对于twitter服务器来说,127.0.0.1和localhost是两个不同的东西。由于您正在使用localhost作为回调url,请尝试在应用程序配置att dev.twitter.com上的授权域配置上添加此域。
https://stackoverflow.com/questions/9371691
复制相似问题