首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Node.js中设置Twitter API参数

在Node.js中设置Twitter API参数
EN

Stack Overflow用户
提问于 2020-11-22 07:30:17
回答 1查看 218关注 0票数 0

所以Twitter提供了一个现成的代码:

https://developer.twitter.com/en/docs/labs/tweets-and-users/quick-start/get-tweets

我正在试着编辑它,以从特定的帐户,标签中获取数据。

我发现const params可以接受两个值:[ids,expansions,tweet.fields,media.fields,poll.fields,place.fields,user.fields],但是我找不到关于如何指向我想要监控的特定Twitter帐户的示例语法。

我审阅的页面:

https://developer.twitter.com/en/docs/twitter-api/fields

https://developer.twitter.com/en/docs/twitter-api/data-dictionary/object-model/tweet

提供了我需要修改的代码片段:

代码语言:javascript
复制
//available params [ids,expansions,tweet.fields,media.fields,poll.fields,place.fields,user.fields]'
const params = {
  ids: '1138505981460193280',
  'tweet.fields': 'created_at',
};
EN

回答 1

Stack Overflow用户

发布于 2020-11-23 17:20:07

您可以在本教程中找到如何检索和浏览用户发布的公共推文的时间线:https://developer.twitter.com/en/docs/tutorials/explore-a-users-tweets

确保您拥有用于连接和验证Twitter API的所有密钥和令牌。

你需要调整你的查询来获得你想要的正确的Tweet。例如,对于@TwitterDev帐户,您需要确保向其发出GET请求的端点是:https://api.twitter.com/2/tweets/search/recent?query=from:TwitterDev

以下是Node.js的示例代码:

代码语言:javascript
复制
const needle = require('needle');

// The code below sets the bearer token from your environment variables
// To set environment variables on Mac OS X, run the export command below from the terminal: 
// export BEARER_TOKEN='YOUR-TOKEN' 
const token = process.env.BEARER_TOKEN; 

const endpointUrl = 'https://api.twitter.com/2/tweets/search/recent'

async function getRequest() {

    // Edit query parameters below
    const params = {
        'query': 'from:twitterdev -is:retweet', 
        'tweet.fields': 'author_id' 
    } 

    const res = await needle('get', endpointUrl, params, { headers: {
        "authorization": `Bearer ${token}`
    }})

    if(res.body) {
        return res.body;
    } else {
        throw new Error ('Unsuccessful request')
    }
}

(async () => {

    try {
        // Make request
        const response = await getRequest();
        console.log(response)

    } catch(e) {
        console.log(e);
        process.exit(-1);
    }
    process.exit();
  })();
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64949206

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档