我成功通过仅应用程序身份验证授权请求。但是当我试图用REST API发布推文时。该错误与无权发布推文有关。所以我做了一项研究,发现Twitter不允许仅限应用程序的身份验证来发布推文。
“它将无法发布推文或其他资源;”
但我找到了“您的访问令牌”区域。我可以用它来发布推文吗?我怎么用呢?
我也可以使用相同的方法进行评论吗?
到目前为止,这是我的代码,
HTTP.call('POST', 'https://api.twitter.com/oauth2/token', {
params: { 'grant_type':'client_credentials'},
headers: {
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
'Authorization': 'Basic '+base64token
}
},function (error, response) {
if (!error && response.statusCode == 200) {
token = response.data.access_token;
HTTP.call('POST', 'https://api.twitter.com/1.1/statuses/update.json', {
params: { 'status':data.tweet},
headers: {
'Authorization': 'Bearer '+token
}
},function (error, response) {
if (!error && response.statusCode == 200) {
console.log(response);
} else {
console.error(error.message);
}
});
} else {
console.error(error.message);
}
});
答案 0 :(得分:2)
如果您甚至没有说明您是在客户端还是在服务器端运行该代码,那么很难告诉您具体的内容。
但是如果您在服务器端调用Twitter API(因为您应该避免泄漏凭据),那么您应该使用许多专用模块中的一个来与npm上可用的Twitter API进行交互。请参阅此答案以获取示例:
使用正确的工具比自己重新实现要容易得多,特别是如果你自己做错了,这显然是这里的情况。