使用ExpressJS发布帖子请求

时间:2014-03-19 14:15:51

标签: javascript node.js express

我想在GET操作上发出POST请求。

一切正常但我在帖子后看不到“忘记”,我不明白为什么。

    var request = require('request');

    exports.getToken = function(req, res){

        var postData = {
            client_id: CLIENT_ID,
            client_secret: CLIENT_SECRET,
            grant_type: 'authorization_code',
            redirect_uri: REDIRECT_URI,
            code: CODE
        }

        request.post({
            uri:"https://api.instagram.com/oauth/access_token",
            form: postData,
            followRedirect: true,
            maxRedirects: 10
        },function(err,res,body){
            var data = JSON.parse(body);
            TOKEN = data.access_token;
        });

        console.log(TOKEN);

        res.render('index', {title: '*****'});
    }

1 个答案:

答案 0 :(得分:2)

console.log(TOKEN)正在request.post之后执行,因此您没有给它时间来完成请求。这就是你提供回调的原因:一个请求完成后将执行的函数。

尝试将console.log移动到回调函数中,看看是否在那里获取数据。您可以阅读许多内容来理解异步编程。例如:

http://callbackhell.com/

http://recurial.com/programming/understanding-callback-functions-in-javascript/

相关问题