C#调用Twitter API 如何使用发布推文返回的唯一ID发起删除请求
调用Twitter API删除推文操作指引
1. 从POST发推响应中提取推文ID
调用发推接口成功后会返回200状态码,响应体为JSON结构,直接从对应字段取ID即可:
- 若使用Twitter API v1.1版本的
POST statuses/update.json接口,取响应根字段下的id_str值作为推文ID(不要用id数值字段,长数字在部分编程语言中会出现精度丢失问题) - 若使用Twitter API v2版本的
POST /2/tweets接口,取响应data字段下的id值作为推文ID
响应示例
v2版本发推响应结构
{ "data": { "id": "1698765432109876543", "text": "你发布的推文内容" } }
v1.1版本发推响应结构
{ "created_at": "Wed Oct 10 20:19:24 +0000 2018", "id": 1050118621198927104, "id_str": "1050118621198927104", "text": "你发布的推文内容" }
2. 构造DELETE删除请求
将提取到的推文ID替换到删除接口的占位符位置即可:
- v1.1版本删除接口格式为
POST /1.1/statuses/destroy/{你拿到的推文ID}.json注意v1.1版本删除接口用的是POST方法不是DELETE方法
代码操作示例(Python)
# 发推请求 post_resp = oauth.post( "https://api.twitter.com/2/tweets", json={"text": "测试推文"} ) post_resp_json = post_resp.json() # 提取推文ID tweet_id = post_resp_json["data"]["id"] # 发起删除请求 delete_resp = oauth.post( f"https://api.twitter.com/1.1/statuses/destroy/{tweet_id}.json" ) # 校验删除结果 if delete_resp.status_code == 200: print("推文删除成功")
注意:删除接口需要和发推接口使用相同的用户鉴权凭证,且只能删除当前鉴权用户自己发布的推文,否则会返回403权限错误。
内容的提问来源于stack exchange,提问作者Hanna
相关产品推荐
相关产品推荐

