限制为Android时,YouTube API密钥会出现500错误
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了限制为Android时,YouTube API密钥会出现500错误相关的知识,希望对你有一定的参考价值。
我很难用一个专门在android上使用的密钥来查询YouTube搜索API。似乎当我从此密钥中删除限制时,请求正常。当我尝试将其锁定并按照this solution中的描述发送证书和包头时,我收到了一个非常无用的500错误:
{
"error": {
"errors": [
{
"domain": "global",
"reason": "internalError",
"message": "Internal Error"
}
],
"code": 500,
"message": "Internal Error"
}
}
以下是我在cURL表单中尝试的请求,其中包含私人信息:
curl -X GET
'https://www.googleapis.com/youtube/v3/search/?q=songs&maxResults=25&key=my_api_key&part=snippet'
-H 'x-android-cert: xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx:xx'
-H 'x-android-package: com.xx.xx'
此API的documentation表示仅在StackOverflow上提供支持。是否有任何Google工程师可以帮助我理解为什么会失败?
答案
经过一些试验和错误后,这似乎是由x-android-cert
标头中发送的指纹格式引起的。它不需要接受开发控制台(AB:CD:EF:01:23:...
)所需的相同格式,而是需要作为小写的十六进制字符串(abcdef0123...
)发送。希望这有助于下一个不幸遇到这个问题的灵魂。
以上是关于限制为Android时,YouTube API密钥会出现500错误的主要内容,如果未能解决你的问题,请参考以下文章
Android Google Maps Direction Api - Api 密钥限制不起作用
当我对谷歌地图中的 API 密钥使用应用程序限制或 API 限制时,其他人可以运行我的 android 应用程序吗?