POST media/upload

概述

使用此端点上传图像至 Twitter。它返回的 media_id 可以在大多数接受图像的 Twitter 端点中使用。例如,利用 POST statuses/update 端点,media_id 值可用于创建带有附照的推文。

这是一种简单的图像上传端点,功能组合有限。首选方案为分块上传端点,这种端点支持图像和视频,有更好的可靠性,可以恢复文件上传,并且支持其他重要功能。将来,只有分块的上传端点支持新功能。

参阅上传媒体指南,了解有关媒体文件的限制和要求。

使用媒体元数据端点提供图像 alt 文本信息。

确保 POST 为 multipart/form-data 请求。要么上传文件的原始二进制(media 参数),要么上传其 base64 编码的内容(media_data 参数)。尽可能使用原始二进制,因为 base64 编码会导致文件更大

响应会在 media_id(64 位整数)和 media_id_string(字串)字段中分别提供媒体标识符。为 JavaScript 和其他无法准确表示长整数的语言,使用 API 响应中提供的 media_id_string

返回的 media_id 有效时间仅为 expires_after_secs 秒。此时间段后,尝试在其他端点中使用 media_id 都会导致 HTTP 4xx 错误请求。

additional_owners 字段支持以用户 A 的身份上传媒体,然后以用户 B 的身份创建推文。

请注意,对于某些类型的数据(tweet_giftweet_videoamplify_video),您需要使用分块上传端点

请求

请求应该是 multipart/form-dataapplication/x-www-form-urlencoded POST 格式。

注意: 此端点的域为 upload.twitter.com

资源 URL

https://upload.twitter.com/1.1/media/upload.json

资源信息

响应格式 JSON
是否需要认证? 是(仅限用户情景)
是否存在速率限制?

参数

名称 必填 说明 默认值 示例
media 必填 正在上传的原始二进制文件内容。不能与 media_data 一起使用。
media_data 必填 正在上传的 base64 编码文件内容。不能与 media 一起使用。
additional_owners 可选 用于设置为允许使用推文或卡片中返回的 media_id 的其他所有者的用户 ID 列表,以逗号分隔。可最多指定 100 位其他所有者。

示例请求

POST https://upload.twitter.com/1.1/media/upload.json

示例响应

{
  "media_id": 710511363345354753,
  "media_id_string": "710511363345354753",
  "size": 11065,
  "expires_after_secs": 86400,
  "image": {
    "image_type": "image/jpeg",
    "w": 800,
    "h": 320
  }
}

Was this document helpful?

感谢

谢谢你的反馈。我们真的很高兴能帮上忙!

Thank you for the feedback. How could we improve this document?

Thank you for the feedback. Your comments will help us improve our documents in the future.