我正在使用一个node.js
使用 Facebook API 的应用程序。在我的代码的一部分中,我需要access_token
从一个通用函数返回。也就是说,很多其他函数都需要调用这个函数来检索 Facebook 访问令牌。
下面是我的代码:
function getAccesstoken(code) {
var options = {
host: 'graph.facebook.com',
path: '/oauth/access_token?client_id=xxxx&redirect_uri=xxxxxx&client_secret=xxxxx&code='+code.toString()
};
var acc_token = ''
https.get(options, function(resp) {
resp.on('data', function(d) {
acc_token = acc_token+d.toString()
});
resp.on('end', function() {
var expiry_index = acc_token.indexOf('&expires=')
acc_token = acc_token.substring(0, expiry_index)
});
});
return acc_token.toString()
}
由于https.get
调用是异步的,函数总是返回一个空字符串。最好的方法应该是什么?