跳转到主要内容

开始使用倒序排列的主页时间线

本快速入门指南将帮助你使用一组指定的字段,通过其中一个时间线端点发出第一个请求,使用 Postman 如果你想查看不同语言的示例代码,请访问我们的 X API v2 示例代码 GitHub 仓库。
先决条件要完成本指南,你需要一组用于对请求进行认证的密钥和令牌。你可以按照以下步骤生成这些密钥和令牌:
  • 注册开发者账户并通过审批。
  • 在开发者门户中创建一个Project以及关联的developer App
  • 前往你的 App 的“Keys and tokens”页面生成所需的凭证。请确保将所有凭证保存在安全位置。
构建倒序排列主页时间线请求的步骤 在本示例中,我们将调用按 ID 获取用户 Post 时间线的端点,但你也可以将本快速入门中的方法应用于用户提及时间线请求。 第一步:选择工具或库 有多种工具、代码示例和库可用于向该端点发出请求,但我们将在此使用 Postman 来简化流程。 要将 X API v2 的 Postman 集合加载到你的环境,请点击以下按钮: 将 X API v2 集合加载到 Postman 后,导航到“Timelines”文件夹并找到“Reverse chronological home timeline”请求。 第二步:认证你的请求 要正确地向 X API 发出请求,你需要验证你具备相应权限。对于该端点,你必须使用 OAuth 2.0 Authorization Code with PKCEOAuth 1.0a User Context 方法对请求进行认证。 你需要将密钥和令牌添加到 Postman。你可以在 Postman 右上角选择名为“X API v2”的环境,并将密钥和令牌添加到“initial value”和“current value”字段中(点击环境下拉菜单旁的眼睛图标)。 如果设置正确,这些变量会自动注入到请求的 authorization 选项卡中。 第三步:确定并指定要为哪个用户检索其主页时间线 你必须在请求中指定要为其检索最新 Posts 的用户。在此示例中,我们将传入一个用户 ID。 用户 ID 是表示账号用户名的数值,你可以在账号的个人资料 URL 中找到。例如,以下账号的用户名是 XDevelopers https://x.com/XDevelopers 要将该用户名转换为用户 ID,你需要使用带用户名的 users lookup endpoint,并在 payload 中找到该数值用户 ID。对于 @XDevelopers,用户 ID 为 2244994945。 在 Postman 中,导航到“Params”选项卡,并将此用户 ID 填入 id 参数的“Value”列。
KeyValue
id2244994945
第四步:确定并指定要检索的字段 如果你在第三步后点击“Send”按钮,你将会在响应中收到默认的 Post object 字段:id、text 和 edit_history_tweet_ids。 如果你想获取更多字段,需要在请求中通过 field 和/或 expansion 参数进行指定。 在本练习中,我们将从不同对象请求三组额外字段:
  1. 在主用户对象中包含额外的 tweet.created_at 字段。
  2. 对于返回的 Post,其关联作者的用户对象将包含默认字段:id、name 和 username
  3. 在关联的用户对象中包含额外的 user.created_at 字段。  
在 Postman 中,前往“Params”选项卡,在“Query Params”表中添加以下键值对:
KeyValueReturned fields
tweet.fieldscreated_attweets.created_at
expansionsauthor_idincludes.users.idincludes.users.nameincludes.users.username
user.fieldscreated_atincludes.users.created_at
max_results5
现在你应该会在“Send”按钮旁看到以下 URL: https://api.x.com/2/users/:id/timelines/reverse_chronological?tweet.fields=created_at&expansions=author_id&user.fields=created_at&max_results=5
请注意:在 Postman 中,URL 字段中的路径参数 :id 不会自动更新为你在 id 参数字段中输入的值,这就是为什么上面的 URL 仍显示 :id,而不是 2244994945。
步骤五:发起请求并查看响应 当你完成所有设置后,点击“Send”按钮,你将会收到以下响应:
	"data": [
		{
			"created_at": "2022-05-12T17:00:00.000Z",
			"text": "今天,我们正式推出 Devs in the Details——一个由使用 X API 构建产品的开发者为开发者制作的技术视频系列。🚀\n\n在首期节目中,@jessicagarson 将为我们详细讲解她是如何构建 @FactualCat 的 #WelcomeToOurTechTalk\n⬇️\n\nhttps://t.co/nGa8JTQVBJ",
			"author_id": "2244994945",
			"id": "1524796546306478083"
		},
		{
			"created_at": "2022-05-11T19:16:40.000Z",
			"text": "📢 明天 5 月 12 日 | 美东时间下午 5:30 / 太平洋时间下午 2:30,与 @jessicagarson @alanbenlee 和 @i_am_daniele 一起探讨机器人的未来 https://t.co/sQ2bIO1fz6",
			"author_id": "2244994945",
			"id": "1524468552404668416"
		},
		{
			"created_at": "2022-05-09T20:12:01.000Z",
			"text": "您是否使用 X API 开发机器人?🤖\n\n5 月 12 日星期四 | 美东时间下午 5:30 / 太平洋时间下午 2:30,与 @jessicagarson @alanbenlee 和 @iamdaniele 一起探讨机器人的未来,并解答您的任何疑问。🎙📆⬇️\n\nhttps://t.co/2uVt7hCcdG",
			"author_id": "2244994945",
			"id": "1523757705436958720"
		},
		{
			"created_at": "2022-05-06T18:19:54.000Z",
			"text": "如果您想申请该计划,或想提名其他人参加,请填写以下表单:\n\nhttps://t.co/LUuWj24HLu",
			"author_id": "2244994945",
			"id": "1522642324781633536"
		},
		{
			"created_at": "2022-05-06T18:19:53.000Z",
			"text": "我们在论坛帖子中详细介绍了每位 Insider 的信息。\n\n欢迎一起祝贺新成员的加入!🥳\n\nhttps://t.co/0r5maYEjPJ",
			"author_id": "2244994945",
			"id": "1522642323535847424"
		}
	],
	"includes": {
		"users": [
			{
				"created_at": "2013-12-14T04:35:55.000Z",
				"name": "X Dev",
				"username": "TwitterDev",
				"id": "2244994945"
			}
		]
	},
	"meta": {
		"result_count": 5,
		"newest_id": "1524796546306478083",
		"oldest_id": "1522642323535847424",
		"next_token": "7140dibdnow9c7btw421dyz6jism75z99gyxd8egarsc4"
	}
}
步骤六:分页查看结果 在上一个响应的底部,你会看到一个 meta data 对象,其中包含以下字段:
  • oldest_id
  • newest_id
  • results_count
  • next_token
  • previous_token
在步骤四中,我们传递了 max_results 的值为 5,这意味着每个页面最多包含五条结果。要访问更多页的数据,我们将把上一页结果中的 next_token 字段的值,作为字符串添加到 Postman 的 params 页面中的 pagination_token 参数上,其他设置保持不变。
pagination_tokent3buvdr5pujq9g7bggsnf3ep2ha28
完成这些设置后,你可以再次点击“Send”,即可获取下一页结果。 我们编写了关于分页的指南,以进一步解释这一概念。 后续步骤 使用 API 参考文档自定义请求 向社区寻求帮助