Flutter Dart中的Twitter API 2.0对话id
我正在尝试使用Twitter2.0API执行http get请求,以使用对话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
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天历史。感谢您的回复,我会将此标记为已解决。我将努力申请一个学术帐户,以获得完整的对话