Youtube api “错误”;503:服务不可用“;尝试使用YouTube API上传视频时

Youtube api “错误”;503:服务不可用“;尝试使用YouTube API上传视频时,youtube-api,httprequest,http-status-code-503,Youtube Api,Httprequest,Http Status Code 503,回答: X-Upload-Content-Length值中有一个空格 问题: 我想用YouTube API从桌面应用程序上传视频,在C++中。我在2007年7月19日(星期五)下午实现了,一切正常,我可以上传几个小视频,从那时起,我在使用我的应用程序时总是出现一个错误:“503:服务不可用” 我发现有几个线程处理这个主题,似乎有两种解决方案: 连续多次重试该请求 等等,过了一会儿它又开始工作了 一次又一次地做同样的请求并不能解决我的问题(我试着连续做了5次请求,也许我应该做更多的请求?多少次

回答
X-Upload-Content-Length
值中有一个空格

问题

我想用YouTube API从桌面应用程序上传视频,在C++中。我在2007年7月19日(星期五)下午实现了,一切正常,我可以上传几个小视频,从那时起,我在使用我的应用程序时总是出现一个错误:“503:服务不可用”

我发现有几个线程处理这个主题,似乎有两种解决方案:

  • 连续多次重试该请求
  • 等等,过了一会儿它又开始工作了
一次又一次地做同样的请求并不能解决我的问题(我试着连续做了5次请求,也许我应该做更多的请求?多少次?)。这是一个示例请求和我得到的响应:

请求:

POST https://www.googleapis.com/upload/youtube/v3/videos?uploadType=resumable&part=snippet HTTP/1.1
Accept: */*
Accept-Language: xx
Authorization: Bearer MY_ACCESS_KEY
X-GData-Key: key=MY_DEV_KEY
Content-Type: application/json
X-Upload-Content-Type: video/avi
X-Upload-Content-Length: 302 080
User-Agent: SOME_PRIVATE_STUFF
Host: www.googleapis.com
Content-Length: 167
Connection: Keep-Alive
Cache-Control: no-cache

{
"snippet": {
"title": "My video title",
"description": "This is a description of my video",
"tags": ["cool", "video", "more keywords"],
"categoryId": 22
}
} 
答复:

HTTP/1.1 503 Service Unavailable
Date: Fri, 26 Jul 2013 16:33:27 GMT
Server: HTTP Upload Server Built on Jul 21 2013 19:20:38 (1374459638)
Content-Length: 0
Content-Type: text/html; charset=UTF-8 

感谢您的帮助,我现在真的不知道该怎么办。

我看到您的HTTP请求有很多问题,但我不知道是因为您在公开发布时更改了一些细节,还是因为您原来的HTTP看起来确实是这样。例如,第一行不应包含
https://www.googleapis.com
发布之后
,您不需要设置
X-GData-Key
(这在API的v2中使用),
302080
不是有效数字,等等。谢谢Jeff,我通过删除空格更正了
X-Upload-Content-Length
值,它现在似乎起作用了。我还删除了
X-GData-Key
,第一行中写入的主机就是Fiddler显示原始请求的方式。还有其他不正确的地方吗?(我仍然不明白为什么它给了我一个“503:Service Unavailable”错误,而不是一个“400:Bad Request”…)如果它在这一点上起作用,那么我认为你没事。这些是我看到的主要问题。