使用Ruby恢复可恢复的YouTube Data API v3上传

使用Ruby恢复可恢复的YouTube Data API v3上传,第1张

概述我目前正在使用 google-api-ruby-client将视频上传到Youtube API V3,但我找不到获取由可恢复上传创建的Youtube ID的方法.我试图使用的代码是: media = Google::APIClient::UploadIO.new(file_path, 'application/octet-stream')yt_response = @client.execute 我目前正在使用 google-api-ruby-client将视频上传到Youtube API V3,但我找不到获取由可恢复上传创建的Youtube ID的方法.我试图使用的代码是:

media = Google::apiclient::Uploadio.new(file_path,'application/octet-stream')yt_response = @clIEnt.execute!({  :API_method => @youtube.vIDeos.insert,:parameters => {    :part => 'snippet,status','uploadType' => 'resumable'  },:body_object => file_details,:media => media})return JsON.parse(yt_response.response.body)

但不幸的是,对于可恢复的上传,yt_response.response.body是空白的.如果我将’uploadType’更改为’multipart’,那么body是一个包含Youtube ID的JsON blob.可恢复上传的响应仅是具有空体的上载的可恢复会话URI.如何从该URI转到我刚刚创建的Youtube ID?

解决方法 合成 How to engage a Resumable upload to Google Drive using google-api-ruby client?和 existing multipart upload sample的信息导致

vIDeos_insert_response = clIEnt.execute!(  :API_method => youtube.vIDeos.insert,:body_object => body,:media => Google::apiclient::Uploadio.new(opts[:file],'vIDeo/*'),:parameters => {    'uploadType' => 'resumable',:part => body.keys.join(',')  })vIDeos_insert_response.resumable_upload.send_all(clIEnt)puts "'#{vIDeos_insert_response.data.snippet.Title}' (vIDeo ID: #{vIDeos_insert_response.data.ID}) was successfully uploaded."

这对我有用.

总结

以上是内存溢出为你收集整理的使用Ruby恢复可恢复的YouTube Data API v3上传全部内容,希望文章能够帮你解决使用Ruby恢复可恢复的YouTube Data API v3上传所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1268527.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)

保存