Node.js:在if语句中执行rest调用

时间:2013-01-19 07:56:43

标签: javascript node.js heroku express

我正在使用Node JS with express,如果用户使用facebook成功登录,我想在我的数据库中使用REST调用创建一个新用户。这段代码只是对heroku node.js facebook app的轻微修改:https://github.com/heroku/facebook-template-nodejs/blob/master/web.js

这是我尝试的内容

             //create Parse Object
    var parse_app_id = process.env.PARSE_APP_ID;
    var parse_master_key = process.env.PARSE_MASTER_KEY;
    var nodeParse = new Parse(parse_app_id, parse_master_key);

function handle_facebook_request(req, res) {

  // if the user is logged in
  if (req.facebook.token) {

    async.parallel([

       function(cb) {
        // query 4 friends and send them to the socket for this socket id
        req.facebook.get('/me/friends', { limit: 4 }, function(friends) {
          req.friends = friends;
          cb();
        });
      },
      function(cb) {
        // query 16 photos and send them to the socket for this socket id
        req.facebook.get('/me/photos', { limit: 16 }, function(photos) {
          req.photos = photos;
          cb();
        });
      }

    ], function() {
      render_page(req, res);
      nodeParse.signUp('',{ username: 'tajmahal', password: 'stuff'}, function(err, response) {
            console.log(response);
      });
    });

  } 
}

app.get('/', handle_facebook_request);
app.post('/', handle_facebook_request);
请求应用程序时执行

handle_facebook_request ...除用户创建外,一切正常。

signUp在条件外部创建用户(因此函数可以正常工作)

我该如何解决这个问题?

0 个答案:

没有答案