0

我正在尝试使用 YouTube v3 Data API 插入频道横幅。我正在使用 .net 客户端库。文档需要一个 3 步流程。

  1. 上传新横幅
  2. 从上传响应中提取新的横幅网址
  3. 将bannerExternalUrl设置为提取的url并调用频道更新。

我的问题出在第 2 步。如果我检查返回的 url 是否为 null。我在 Fiddler 中仔细检查了 json 响应不包含 Url 属性或值。

任何人都知道如何上传横幅?谢谢!

     var channelBannerResource = new ChannelBannerResource();
     var insertMediaUpload = _serviceV3.ChannelBanners.Insert(channelBannerResource, new FileStream("C:\\banner1.png", FileMode.Open, FileAccess.Read), "image/png");
     insertMediaUpload.Oauth_token = _accessToken;
     var result = insertMediaUpload.Upload();

     //banner Url returns null
     var bannerUrl = insertMediaUpload.ResponseBody.Url;
4

1 回答 1

0

不太确定,但是,请查看此链接(如果您还没有)

https://developers.google.com/youtube/v3/docs/channelBanners

快速查看您的代码看起来不错

需要注意的一件事 图像必须具有 16:9 的纵横比并且至少为 2120x1192 像素。

更新

好的,您似乎还没有调用频道更新方法。像这样的东西

Channel updateChannelResponse = youtube.channels()
                .update("god knows what parameter(s) here")

查看此链接以获取更多详细信息:

https://developers.google.com/youtube/v3/docs/channels/update

调用此方法后进行侦察,URL 应该在那里...我侦察...

更新 2...

是的,你的权利,我尝试了 api explorer 但也无法让它工作:

https://developers.google.com/apis-explorer/#p/youtube/v3/youtube.channelBanners.insert?_h=2&resource=%257B%250A++%2522url%2522%253A+%2522http%253A%252F%252Ffr。 upphotos.net%252Fwp-content%252Fuploads%252F2013%252F05%252FFerrari-HD-Widescreen-Large.jpg%2522%250A%257D&

但不幸的是得到一个错误响应,奇怪的是它抱怨'part'参数但没有......这可能是API中的一个错误,无法想象有很多人使用这个功能

{
 "error": {
  "errors": [
   {
    "domain": "youtube.part",
    "reason": "unexpectedPart",
    "message": "contentDetails",
    "locationType": "parameter",
    "location": "part"
   }
  ],
  "code": 400,
  "message": "contentDetails"
 }
}

我期待这个插入提供 URL,这里有新鲜的想法。

于 2013-08-30T13:05:05.490 回答