Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/41.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js Everyauth-与Foursquare连接_Node.js_Foursquare_Everyauth - Fatal编程技术网

Node.js Everyauth-与Foursquare连接

Node.js Everyauth-与Foursquare连接,node.js,foursquare,everyauth,Node.js,Foursquare,Everyauth,我正在尝试构建一个Foursquare应用程序,我选择了Everyauth模块来实现身份验证(与Foursquare连接) 我发现了错误 Error: Step getAccessToken of `foursquare` module timed out. 在用户允许应用程序之后。以下是我正在使用的代码: var express = require('express'), util = require('util'), helper = require('./

我正在尝试构建一个Foursquare应用程序,我选择了Everyauth模块来实现身份验证(与Foursquare连接)

我发现了错误

Error: Step getAccessToken of `foursquare` module timed out.
在用户允许应用程序之后。以下是我正在使用的代码:

var express = require('express'),
        util = require('util'),
        helper = require('./helper'),
        settings = require('./settings').appSettings,
        everyauth = require('everyauth');

everyauth.foursquare
  .entryPath('/auth/foursquare')
  .callbackPath('/auth/foursquare/callback');

//everyauth.everymodule.moduleTimeout(-1);

everyauth.foursquare
  .appId(settings.appId)
  .appSecret(settings.appSecret)
  .findOrCreateUser( function (session, accessToken, accessTokenExtra, foursquareUserMetadata) {
    util.inspect(arguments);
    return {};
  })
  .redirectPath('/');

  var app = express.createServer(
      express.bodyParser()
    , express.static(__dirname + "/public")
    , express.favicon()
    , express.cookieParser()
    , express.session({ secret: '*****'})
    , everyauth.middleware()
  );

app.get('/', function (req, res) {
    res.writeHead(200, {'Content-Type': 'text/html'});
    res.end('<html><head></head><body><a href="' + helper.getAuthUrl() + '">Connect with Foursquare</a></body></html>');
});

everyauth.helpExpress(app);

app.listen(4040);
var express=require('express'),
util=require('util'),
helper=require('./helper'),
设置=需要('./设置')。应用设置,
everyauth=require('everyauth');
everyauth.foursquare
.entryPath(“/auth/foursquare”)
.callbackPath('/auth/foursquare/callback');
//everyauth.everymodule.moduleTimeout(-1);
everyauth.foursquare
.appId(设置.appId)
.appSecret(设置.appSecret)
.findOrCreateUser(函数(会话、accessToken、accessTokenExtra、foursquareUserMetadata){
util.inspect(参数);
返回{};
})
.redirectPath(“/”);
var app=express.createServer(
express.bodyParser()
,express.static(uu dirname+“/public”)
,express.favicon()
,express.cookieParser()
,express.session({secret:'******'})
,everyauth.middleware()
);
app.get('/',函数(req,res){
res.writeHead(200,{'Content-Type':'text/html'});
res.end(“”);
});
everyauth.helpExpress(应用程序);
app.listen(4040);

我的错误是,我将用户重定向到Foursquare文档中描述的应用程序验证url。如果我将用户重定向到/auth/foursquare/,它会起作用,因为everyauth会处理重定向到oauth提供者的操作。

示例
everyauth
对您有效吗?