Flutter Dart中的Twitter API 2.0对话id

Flutter Dart中的Twitter API 2.0对话id,flutter,dart,twitter,http-get,Flutter,Dart,Twitter,Http Get,我正在尝试使用Twitter2.0API执行http get请求,以使用对话id请求返回对话 它只返回主推文,但不返回对推文的回复。谁能告诉我我做错了什么?任何帮助都将不胜感激 import 'package:http/http.dart'; import 'dart:convert'; class TwitterService{ final String twitterUrl = 'https://api.twitter.com/2/tweets?ids=117643415

我正在尝试使用Twitter2.0API执行http get请求,以使用对话id请求返回对话

它只返回主推文,但不返回对推文的回复。谁能告诉我我做错了什么?任何帮助都将不胜感激

import 'package:http/http.dart';
import 'dart:convert';


class TwitterService{
  final String twitterUrl =
      'https://api.twitter.com/2/tweets?ids=1176434159520075777&tweet.fields=author_id,conversation_id,created_at,in_reply_to_user_id,referenced_tweets&expansions=author_id,in_reply_to_user_id,referenced_tweets.id&user.fields=name,username'
  ;

    getPosts() async{
    Response response = await get(Uri.parse(twitterUrl),
      headers: {
        'Authorization': 'Bearer $BEARERTOKEN',
      }
      );
    if(response.statusCode == 200) {
      String tweetList = response.body;
      var collection = json.decode(tweetList);
      print(collection);
      return collection;

    } else {
      print('error');
    }
  }

}

我无法在Dart方面提供具体帮助(这在我要学习的内容列表中),但从Twitter API的角度来看,您所拨打的电话将使您能够获得对话id,而不是对话的其余部分

如果查看,您将看到对
/2/tweets
端点的请求将允许您获取对话的ID

请求v2上返回的所有推文的
对话id
端点,
tweet.fields=conversation\u id
字段可以添加到 请求参数。
conversation\u id
字段始终是Tweet id 对话回复线程中的原始推文。所有推文 在同一回复线程中,包括创建的回复线程 从前面的回复线程中,将显示相同的
对话id

您缺少的步骤是下一个阶段,即使用搜索API检索属于同一线程的tweet:

在以下情况下,
conversation\u id
可用作搜索查询参数: 使用最近的搜索或作为规则中的运算符 过滤流。单独使用运算符将导致 以两种方式返回推文的整个对话线程 过滤流中的时间,或按逆时间顺序分页 最近搜索的订单

您应该能够适应Dart的示例:

curl --request GET \
  --url 'https://api.twitter.com/2/tweets/search/recent?query=conversation_id:1279940000004973111&tweet.fields=in_reply_to_user_id,author_id,created_at,conversation_id' \
  --header 'Authorization: Bearer $BEARER_TOKEN' 

另外请注意,最近的搜索时间限制为7天历史。

感谢您的回复,我会将此标记为已解决。我将努力申请一个学术帐户,以获得完整的对话