【问题标题】:Upload chunked video to Twitter with spring-social-twitter / postman使用 spring-social-twitter / postman 将分块视频上传到 Twitter
【发布时间】:2020-01-18 09:17:20
【问题描述】:

我目前正在尝试构建一个应用程序来代表用户将视频发布到 Twitter。

所以我目前有application-keyapplication-secretaccess-tokenaccess-secret

final TwitterTemplate twitterTemplate = new TwitterTemplate(
    "application-key",
    "application-secret",
    "access-token",
    "access-secret");

因此,使用它我实际上可以发布包含 only 文本的推文。 如果我想包含一张图片,我必须包含在 spring-social-twitter 的bug 上发布的解决方法“解决方案”。这解决了图像,但视频仍然无法上传。

所以理性的想法是尝试与邮递员一起上传以“隔离”调用本身。

在上图中我们可以看到授权过程。这对于我拨打的每个电话都是一样的。

有了这个 Auth,一个简单的 POSThttps://api.twitter.com/1.1/statuses/update.json?status=hello 就可以工作了。与 2 次图像调用相同。

  1. POSThttps://upload.twitter.com/1.1/media/upload.json?media_category=tweet_image 用于上传图片(正文 -> 媒体:图片)。
  2. POSThttps://api.twitter.com/1.1/statuses/update.json 将 media_id 与新推文合并。

但是当我发送这个时,再次回到twitter的官方指南之后的视频

回应是

当请求 media_type 不包含 / 时,将从带有 media_id 的高音扬声器返回有效响应,我们称之为 X。 所以我在X 上附加一个视频(第二个命令),然后在X 上完成视频(第三个命令)。但正如预期的那样,响应是

因为从未提供过 media_type。另一方面,如果第二步的视频被推送为 base64 编码(并包括 base64 编码的标头),则响应为

到目前为止,无论我做了什么,我都无法发布视频。我什至使用 Postman 作为 twurl 的代理,并捕获了 确实 上传视频的 twurl 请求。用我的更改了身份验证(因为需要重新创建随机数)并且请求无法上传视频!

一些注意事项:

  1. 凭据是最新的,并且可以从 twurl 工作。
  2. 视频有效,可以通过 tweeter ui 和 twurl 上传命令上传。
  3. base64 转换使用 linux base64 工具进行编码/解码,通过管道传输到文件并验证大小相同。

如果需要任何其他说明,请告诉我!

提前谢谢你

【问题讨论】:

    标签: java video twitter postman spring-social-twitter


    【解决方案1】:

    我知道已经晚了,但如果有人有同样的问题, 要在 twitter 上上传视频,您必须使用 chunked-media-upload 方法。

    这是参考 https://developer.twitter.com/en/docs/media/upload-media/uploading-media/chunked-media-upload

    【讨论】:

    • 如果你检查我上面写的链接,这就是我使用的:/
    • @MichaelMichailidis 您应该尝试通过以正文形式数据发送数据而不是它对我有用的查询字符串
    猜你喜欢
    • 2016-06-23
    • 2015-10-19
    • 2011-02-25
    • 1970-01-01
    • 2013-12-04
    • 2011-12-19
    • 1970-01-01
    • 1970-01-01
    • 2016-10-30
    相关资源
    最近更新 更多