You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何通过Twitter V2 API获取最近5分钟的推文(基于/users/:id/tweets接口)

使用Twitter V2 API获取指定用户最近5分钟推文的方法

嘿,这个需求其实很容易实现,核心是用好Twitter V2 API的时间过滤参数,我给你一步步拆解:

  • 计算时间范围:首先得算出当前UTC时间往前推5分钟的时间点,并且转换成Twitter API要求的ISO 8601格式(比如2024-05-20T12:30:00Z)。举个例子,如果现在UTC时间是2024-05-20T12:35:00Z,那5分钟前的时间就是2024-05-20T12:30:00Z。注意必须用UTC时区,末尾带Z后缀,不能用本地时间。

  • 调用接口时添加过滤参数:在/users/:id/tweets接口的请求URL里,加上start_time参数,值就是刚才计算的5分钟前的ISO时间。另外,虽然API默认按时间降序返回推文,但显式加上sort_order=desc能让逻辑更清晰,确保拿到的是最新的内容。

  • 请求示例(curl)

    curl --request GET \
      --url 'https://api.twitter.com/2/users/123456/tweets?start_time=2024-05-20T12:30:00Z&max_results=100&sort_order=desc' \
      --header 'Authorization: Bearer YOUR_BEARER_TOKEN'
    

    记得把示例里的123456换成目标用户的ID,YOUR_BEARER_TOKEN替换成你的有效Bearer Token,start_time换成你计算的时间值。

  • 关键注意事项

    • 确保你的Bearer Token拥有tweet.read的权限,否则会返回权限错误。
    • 如果5分钟内用户发的推文超过100条,你需要用pagination_token进行分页获取(不过这种情况很少见,一般max_results=100足够覆盖)。
    • 时间参数的格式必须严格符合要求,否则API会返回格式错误。

内容的提问来源于stack exchange,提问作者Coder3000

火山引擎 最新活动