Javascript 如何获得;使用Twitter登录";使用NodeJS
我试图用Twitter实现Sing-In,但是我一直收到以下错误 哇! 此页的请求令牌无效。它可能已经被使用,或者因为太旧而过期。请返回发送给您的站点或应用程序,然后重试;这可能只是一个错误 这是我的密码,我做错了什么Javascript 如何获得;使用Twitter登录";使用NodeJS,javascript,node.js,twitter,oauth,Javascript,Node.js,Twitter,Oauth,我试图用Twitter实现Sing-In,但是我一直收到以下错误 哇! 此页的请求令牌无效。它可能已经被使用,或者因为太旧而过期。请返回发送给您的站点或应用程序,然后重试;这可能只是一个错误 这是我的密码,我做错了什么 // Server var OAuth = require('oauth').OAuth; var callbackUrl = null; var oa = new OAuth( 'https://api.twitter.com/oauth/request_token',
// Server
var OAuth = require('oauth').OAuth;
var callbackUrl = null;
var oa = new OAuth(
'https://api.twitter.com/oauth/request_token',
'https://api.twitter.com/oauth/access_token',
CONSUMER_KEY,
CONSUMER_SECRET,
'1.0',
callbackUrl,
'HMAC-SHA1'
);
const promise = new Promise((resolve, reject) => {
oa.getOAuthRequestToken(function(error, token, secret, results) {
resolve({
token,
secret,
});
});
});
var oauth = await promise;
return { oauth };
// Client
window.open(`https://api.twitter.com/oauth/authenticate?oauth_token=${twitter.oauth.token})`);
我还将回调url设置为与应用程序详细信息页面中相同的url,但没有骰子
var callbackUrl = 'http://0.0.0.0:3001/settings/social/twitter/oauth';
小提示,不确定是否有用,但我注意到返回的令牌比我在网上看到的示例要短。例如:
Mine: EBhy3AAAAAAA94TPAAABajDwCww%
Twitter Site: NPcudxy0yU5T3tBzho7iCotZ3cnetKwcTIRlX0iwRl0&
我的客户代码有一个额外的“)” 应该读
window.open(`https://api.twitter.com/oauth/authenticate?oauth_token=${twitter.oauth.token}`);
这是来自
oa.getOAuthRequestToken
的错误响应,还是来自您在其回调中执行的操作?我获取返回的标记并转到指定的url,我在那里得到了错误:)根据他们的文档,您不认为向我们显示该代码很重要吗?很抱歉@IsaacVidrine,我猜是因为那一边真的没什么我没想到的!我已经更新了原来的postLOL@IsaacVidrine非常感谢你。。。如果你看一下重定向代码,结果发现我在路径中有一个额外的“)”。。。非常感谢你让我看这个=D
window.open(`https://api.twitter.com/oauth/authenticate?oauth_token=${twitter.oauth.token}`);