【问题标题】:Tweet using application in Twitter with Meteor在 Twitter 中使用 Meteor 应用程序发布推文
【发布时间】:2017-09-20 19:40:43
【问题描述】:

我成功地通过仅应用程序身份验证授权请求。但是当我尝试使用 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);
            }
        }); 

【问题讨论】:

    标签: node.js meteor twitter twitter-oauth


    【解决方案1】:

    如果您甚至没有说明您是在客户端还是在服务器端运行该代码,那么很难告诉您任何具体的事情。

    但是,如果您在服务器端调用 Twitter API(您应该避免泄露凭据),那么您应该使用众多专用模块之一与 npm 上可用的 Twitter API 进行交互。有关示例,请参见此答案:

    为工作使用正确的工具比自己重新实现要容易得多,尤其是如果您自己做这件事时遇到了麻烦,这显然就是这种情况。

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-12-12
    • 1970-01-01
    • 2018-12-29
    • 1970-01-01
    • 1970-01-01
    • 2012-05-20
    相关资源
    最近更新 更多