问题标签 [passport-twitter]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
javascript - twitter回调在heroku上中断
我在 heroku 上的 twitter 护照有问题,同时它在 localhost 上运行良好。我无法在 heroku 上登录,并且 web 应用程序在回调期间超时。回调期间似乎发生了一些错误。这是网站:
https://nightlife-app-klm.herokuapp.com
路线 > index.js
服务器.js
配置 > 护照
这是heroku的构建成功日志:
这是我运行它然后刷新时的日志:
javascript - Node.js Loopback Framework + Twitter oauth 在实时服务器上不起作用
我正在使用带有 Node-Twitter 库的 Loopback Third Party Login Passport 进行 api 调用。
我创建了
这是 node-twitter 工作所必需的,我为我的 twitter 帐户手动指定了所有这些凭据,因为我无法从我的 accountIdentity 模型中获取令牌和 tokenSecret。
我有一个“添加 twitter 帐户”按钮,它将用户重定向到 Twitter 授权页面并实现 oauth,然后将用户重定向回页面(在本地计算机上)但在实时服务器上它重定向到 /auth/twitter,然后什么也没有.
我进行 twitter api 调用,例如朋友/ID、用户/查找、帐户/verify_credentials,它们在我的本地计算机上工作正常。我希望他们也能在实时服务器上工作,但他们没有。
- 在 apps.twitter.com 我的回调 URL 设置为http://dev.mysite.com/auth/twitter/callback
提供者.json
{ "twitter-login": { "provider": "twitter", "authScheme": "oauth", "module": "passport-twitter", "callbackURL": "dev.mysite.com/auth/twitter/callback ","authPath":"dev.mysite.com/auth/twitter","callbackPath":"dev.mysite.com/auth/twitter/callback","successRedirect":"dev.mysite.com","failureRedirect ": "dev.mysite.com/login", "consumerKey": "我的密钥在这里指定", "consumerSecret": "我的密钥在这里指定", "failureFlash": true } }
(我尝试“按原样”保留它,这意味着删除 dev.mysite.com,我还尝试在 url 之前添加 http://)
- npm 包在服务器上都是最新的
我的问题是如何使它现在至少为 1 个(我的)帐户工作
node.js - Express、Create-React-App 和 passport-twitter
我正在我的应用程序上设置 Twitter oauth,方法是在前端create-react-app
使用辅助函数 (via ) 来启动后端的 oauth 进程。我目前正在开发中,所以我将我的快速服务器托管在端口上,并将我的前端托管在端口上,前端有一个代理到端口我已经通过npm 包设置了 CORS 权限。axios
passport
3001
3000
3001.
cors
无论我尝试哪组配置,我都无法完成 Twitter OAuth 流程。我尝试过切换端口,保持相同的端口;我试过用express-http-proxy
.
我在我的回调函数和我的初始 api 调用中都使用http://127.0.0.1
了而不是,尝试了端口和.localhost
3000
3001
我现在不确定自己哪里出错了,或者我是否需要放弃passport-twitter
其他解决方案。
在每种情况下,我都会收到以下错误:
根据我尝试的配置,我将 origin 作为null
orhttp://localhost:3001
或http://127.0.0.1
。
请注意,由于其他原因(例如连接到Yelp Fusion API
. 此外,我正在使用中间件来记录我的会话数据,我可以看到我成功地从 Twitter获取oauth_token
和获取。oauth_token_secret
调用在 oauth 过程的下一个阶段失败:
这是我的代码的相关部分 -
后端代码
服务器.JS
护照.JS
授权控制器.JS
前端代码
帮助者.JS
更新 我验证了 Passport Authentication 在我的后端端口上工作。我直接在浏览器中调用端点并被重定向到 Twitter 身份验证,然后将新用户返回到我的回调中,新用户保存在我的架构中,该用户保存到会话数据中。
这意味着问题在于在与我的后端不同的端口上使用 Create-React-App。
http://127.0.0.1:3001/auth/twittersuccess
node.js - Node.js Passport:Twitter 在身份验证期间未返回用户的电子邮件。
我已向apps.twitter.com请求许可,并且身份验证过程成功运行,但 twitter 没有返回用户的电子邮件。返回所有其他详细信息(id、令牌、用户名、显示名称),但电子邮件仍然为空。
我将在下面发布一些代码作为上下文:
这是我的猫鼬数据库模式:
我的护照.js:
我很想知道我做错了什么,这样我就可以成功返回用户的电子邮件。谢谢
node.js - Node.js/Passport Twitter 授权返回 302
我正在做一个 POST 请求以通过 Passport Twitter 策略授权 Twitter。如果我使用 Postman,请求会正常进行,但如果我在我的应用程序中使用它会失败。我得到一个 302 作为响应,这在浏览器控制台中
从我在网上阅读的内容中,我发现这302
是因为重定向调用的一些错误实现?也许是 twitter 在授权应用程序时所做的,而我没有正确处理它?
代码如下。客户端使用 Vuejs 和 Axios 发送请求。
Vue模板:
Axios 设置:
在我的后端,我正在执行以下操作:
护照设置:
还有我的路由器设置:
node.js - 如何为 Restful Api 实施 passport.js Twitter 策略?
我正在使用 Node.js 和 MongoDB 制作一个简单的宁静 API。我想使用 Passport.js 的 Twitter 策略。Web 应用程序有大量示例。路由被重定向到 HTML 页面。我不想要这个。我该如何解决我的情况?
node.js - passport-twitter 返回“加载资源失败:服务器响应状态为 500(内部服务器错误)”
我一直试图解决这个问题,但最终到了这里。这是错误的代码仓库。
我收到一条错误消息:
加载资源失败:服务器响应状态为 500(内部服务器错误)`
对于这样的代码片段,它总是重定向到失败的 URL ( /routes/auth.js
):
根据当前的提交,我可以成功地从 Twitter API 获取令牌。回调 URL 如下:
http://localhost:3000/auth/twitter/callback?oauth_token=(token)&oauth_verifier=(token)
问题:
- 什么地方出了错?
- 如果尝试
debug
出错,我该如何构造错误优先回调(我什至不知道在哪里以及如何输出调试日志)?
node.js - 如何在 Passportjs 节点中使登录持久化?
我正在使用护照库来处理用户的登录,但目前面临一个问题。当用户登录时,他们很快就会再次注销,这是一个糟糕的用户体验。
我是否缺少使用户的登录持久化的东西?
下面是我的代码:
一些教程说我应该使用我使用过的护照会话,但没有任何改变:
javascript - 如何在护照推特策略中使用会话变量 req.user
因为我可以req.user
通过传入来获取任何路由中的登录用户:
我想允许用户使用本地登录以外的推特登录,所以我在 node.js API 中有一个护照推特策略。如何使用 req.user 访问本地登录用户?