Tag: passport twitter

带有Passport.js和Express.js的HTTP GET请求

我是Express.js,Node.js和Passport.js的新手。 我试图开发一个应用程序,用户使用他们的Twitter帐户login,然后他们可以看到他们的提及(其他Twitter用户提到login用户的Twitter用户名的推文)。 我遇到了Passport.js,我已经能够成功地使用它,允许用户使用他们的Twitter帐户login。 但是,我不知道如何格式化服务器端HTTP GET请求的Twitter的提及。 我已经在https://dev.twitter.com/docs/api/1/get/statuses/mentions上多次查看了Twitter API,但由于我不熟悉Node / Express / Passport平台,因此我不知道如何执行这个请求服务器端返回JSON格式的提及。 该应用程序设置为只读,因为它只需要能够看到相关用户的相关Tweets。 前端基于EJS。 以下是我所拥有的可能相关的代码。 非常感谢您的帮助。 -joshingmachine /app.js /** * Module dependencies. */ var express = require('express') , passport = require('passport') , http = require('http') , util = require('util') , path = require('path') , TwitterStrategy = require('passport-twitter').Strategy; var TWITTER_CONSUMER_KEY = "theConsumerKeyForMyApp"; var TWITTER_CONSUMER_SECRET = "theConsumerSecretForMyApp"; var […]

错误:未能在会话中为passport-twitterfind请求令牌

以下是我使用passport-twitter时得到的错误 – Error: Failed to find request token in session at Strategy.OAuthStrategy.authenticate (/MYPROJECT/node_modules/passport-twitter/node_modules/passport-oauth1/lib/strategy.js:142:54) at Strategy.authenticate (/MYPROJECT/node_modules/passport-twitter/lib/strategy.js:85:40) at attempt (/MYPROJECT/node_modules/passport/lib/middleware/authenticate.js:337:16) at Object.authenticate [as handle] (/MYPROJECT/node_modules/passport/lib/middleware/authenticate.js:338:7) at next_layer (/MYPROJECT/node_modules/express/lib/router/route.js:103:13) at Route.dispatch (/MYPROJECT/node_modules/express/lib/router/route.js:107:5) at /MYPROJECT/node_modules/express/lib/router/index.js:205:24 at Function.proto.process_params (/MYPROJECT/node_modules/express/lib/router/index.js:269:12) at next (/MYPROJECT/node_modules/express/lib/router/index.js:199:19) at next (/MYPROJECT/node_modules/express/lib/router/index.js:176:38) 以下是我执行的苏格兰Twitter注册教程, FB signup工作正常。 供参考 – 我在twitter上多次检查过configuration,对我来说一切都好(callbackURL,key,secret等) 我检查了下面的url,但没有运气。 我的开发url就像 – http://192.XXX.XXX.XX:PORT_NUMBER 以下是我的app.js app.js 以下是我的passport.js passport.js […]

在nodejs中使用twitter oauth时,无法获得/ auth / twitter / callback

我正在尝试使用passportjs在nodejs中执行twitter oauth,但却出现错误 Cannot GET /auth/twitter/callback?oauth_token=alksdkalsjdsjd23232378skjdfjsdhf&oauth_verifier=234jjh23j4k234k23h4j2h342k34hj 这是我的节点js代码 var express = require('express') , passport = require('passport') , util = require('util') , GoogleStrategy = require('passport-google').Strategy , TwitterStrategy = require('passport-twitter').Strategy; passport.serializeUser(function(user, done) { done(null, user); }); passport.deserializeUser(function(obj, done) { done(null, obj); }); passport.use(new TwitterStrategy({ consumerKey: 'xxxxxxxxxxxxxxxxxxxx', consumerSecret: 'xxxxxxxxxxxxxxxxxxxxxxxxxx', callbackURL: 'http://127.0.0.1:3000/auth/twitter/callback' }, function(token, tokenSecret, profile, done) { process.nextTick(function () { […]

问题与护照叽叽喳喳战略

我有一个应用程序,我已经与Koa节点写了。 我正在使用护照进行身份validation,Twitter的oauth护照叽叽喳喳,和koa护照,使其与科阿工作。 直到最近,与login的一切都完美。 我开始吸引朋友们对github的一些兴趣,当我试图让新人们关注这个项目时,人们开始有问题无法login并得到这个消息: 哇! 这个页面没有请求令牌。 这是我们需要使用您的Twitter帐户的应用程序的特殊关键。 请回到发送给您的网站或应用程序,然后重试。 这可能只是一个错误。 奇怪的是,我的生产服务器是最新的存储库,并在那里login工作得很好。 我的两台本地机器上的login也同样适用。 当我完全从我的笔记本电脑中删除项目,然后再次将其删除,它也开始有这个问题。 这是我的auth.js中的代码 var passport = require('koa-passport'); var settings = require('./settings'); var Promise = require('../plugins/base/common').Promise; var config = require('../config.json'); passport.serializeUser(function(user, done) { done(null, user) }) passport.deserializeUser(function(user, done) { done(null, user) }) if (process.env.NODE_ENV == "production"){ var domainStr = "http://productionurl.com"; }else{ var domainStr = "http://127.0.0.1:3000"; } […]

passport.js passport-twitter.js node.js奇怪的500个错误

我一直试图通过使用Jared Hanson的良好的tutoral和我的项目来获得passport.js / passport-twitter,这是随之而来的要点 。 不用说,这个要点工作得很好。 我只是添加我的密钥,改变我的callbackurl,它只是工作。 我已经在我的/ etc / hosts中设置了url“whackypants.dev”到127.0.0.1。 这个主要的例子很好地工作。 我的问题是,当我尝试将护照,passport-twitter和connect-ensure-login与我现有的应用程序集成时,我得到了一些相当奇怪和不一致的错误。 当我在/login上点击“使用twitterlogin”时,正如预期的那样,我被带到twitter并给出了一个很好的oauth标记: http://whackypants.dev:8080/auth/twitter/callback?oauth_token=I9sGWDKRyWCJcpM3nLx3Tt3sTGRhTVYUKj03ZYIcYk&oauth_verifier=qiRQt1DGpxH2QF4zHrbKbVGj0qXTy5y2S2Sh8Ts10x7 不过,特快抛出一个500: Express 500 failed to fetch user profile (status: 410 data: {"errors": [{"message": "The Twitter REST API v1 will soon stop functioning. Please migrate to API v1.1. https://dev.twitter.com/docs/api/1.1/overview.", "code": 68}]}) at /Users/doug/whackypants/node_modules/passport-twitter/lib/passport- twitter/strategy.js:107:30 at passBackControl (/Users/doug/whackypants/node_modules/passport- twitter/node_modules/passport-oauth/node_modules/oauth/lib/oauth.js:374:13) at IncomingMessage. (/Users/doug/whackypants/node_modules/passport- […]

使用passport-twitter更改回叫url

我正在使用passport twitter来添加一个twitter连接到我的网站。 用户可以通过不同的操作连接,我想redirect到不同的页面,取决于他们点击的地方。 到目前为止,我每次login都使用相同的callbackURL: passport.use(new TwitterStrategy({ consumerKey: TWITTER_CONSUMER_KEY, consumerSecret: TWITTER_CONSUMER_SECRET, callbackURL: "http://127.0.0.1:3000/auth/twitter/callback" }, function(token, tokenSecret, profile, done) { // some code } )); 在这里我想添加一个传递给我的twitter策略的参数来定义使用哪个callbackURL: app.get('/auth/twitter/:option', passport.authenticate('twitter')); 我怎样才能做到这一点? 非常感谢

Nodejs + Passport + MySQL

我想弄清楚如何使用nodejs + Passport + MySQL。 看起来好像每个教程都使用mongoDB,我不想这样做。 事实上,这种types的快速search会产生像( http://nodejsrocks.blogspot.com/2012/04/nodejs-expressjs-mysql.html )这样的网页和一个人(youtube video)( https:// www .youtube.com / watch?v = jGBbMVJx3h0 )除了login之外什么都不做,谁知道他真的在用什么,但是页面已经有了3K +的视图。 我希望一些开发人员能够看到这个,也许有一种用途,就像一个全面的非MVCtypes的事情与MySQL。 我之所以这样做,是因为我只想获得iOS和Android的function,而不需要大量的脚手架开销。 只是数据库和服务器端脚本处理查询和返回的JSON对象的手机。 所以呢,这样说呢,能有一个有实际经验的人请帮帮我(而世界其他地方都没有深入的教程,因为我们没有使用mongoDB和完整的脚手架来做类似的事情) 。 我为“TwitterStrategy”设置的表格是用户(id(PK),用户名,电子邮件,salt,密码)和twitterusers(id),名称,屏幕名称,位置,说明,url,img, tokensecret)。 这是我想要从一个单一的main.js文件去的代码。 我知道这不是最佳做法,而且我计划在稍后清理它,但现在,我想了解我所缺less的东西,并使其工作。 如果有人能帮忙,我将非常感激,而且我很确定其他人也会觉得这很有用。 谢谢。 var http = require('http'), mysql = require('mysql'), url = require('url'), crypto = require('crypto'), express = require('express'), flash = require('connect-flash'), passport = require('passport'), TwitterStrategy = require('passport-twitter').Strategy; […]

sails.js与护照叽叽喳喳

我正在整合passport和sails 。 虽然谷歌和脸书在我的应用程序工作正常,我很难与Twitterauthentication! 当点击“使用twitterlogin”button时,会出现一个错误提示: Error: OAuthStrategy requires session support. Did you forget app.use(express.session(…))? Error: OAuthStrategy requires session support. Did you forget app.use(express.session(…))? 我在这里读到,会话是必要的Twitterauthentication工作。 我确定我的应用程序已启动会话! 我testet passport-twitter一个简单的快递应用程序(无风帆),以确保该模块正在工作,我的twitter凭据是完好无损的。 我假设帆会议是不同的expression会议? 风帆会改变会议的方式吗? 有关如何解决这个问题的任何build议? 编辑:添加一些更多的信息按要求在评论: 风帆版本:0.9.13 UserController.js: … twitter: function(res, req) { passport.authenticate('twitter', {failureRedirect: '/login'}, function(err, user, info) { return console.log(err, user, info); })(req, res); } … configuration/ passport.js: … […]

在Node中使用Passport中间件进行Twitter身份validation

我正在开发一个网站与Node.js(使用Express框架)。 为了使用Twitter身份validation,我正在使用passport模块(http://passportjs.org),他的Twitter包装器称为passport-twitter 。 我的服务器端脚本是: /** * Module dependencies. */ var express = require('express') , routes = require('./routes') , user = require('./routes/user') , http = require('http') , path = require('path') , passport = require('passport') , keys = require('./oauth/keys') , TwitterStrategy = require("passport-twitter").Strategy; var app = express(); app.configure(function(){ app.set('port', process.env.PORT || 3000); app.set('views', __dirname + '/views'); app.set('view […]