繁体   English   中英

Node.js 中的 Twitter API 参数设置

[英]Twitter API parameters setup in Node.js

所以 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

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

//available params [ids,expansions,tweet.fields,media.fields,poll.fields,place.fields,user.fields]'
const params = {
  ids: '1138505981460193280',
  'tweet.fields': 'created_at',
};

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

确保您拥有所有密钥和令牌来连接 Twitter API 并对其进行身份验证。

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

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

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();
  })();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM