YouTube 嵌入 API:调用者没有权限
YouTube embed API: The caller does not have permission
我正在我的网站上嵌入一些 YouTube 视频。我一直收到一些投诉,说他们没有加载。我调查并注意到,在尝试播放它们时,我遇到了一些 403 Forbidden 错误:
查看 JSON 响应,我收到一些消息,通常说“调用者没有权限”。这是完整的 JSON 数据:
{
"error": {
"code": 403,
"message": "The caller does not have permission",
"errors": [
{
"message": "The caller does not have permission",
"domain": "global",
"reason": "forbidden"
}
],
"status": "PERMISSION_DENIED"
}
}
为什么会这样?我不认为我需要密钥或令牌来嵌入 YouTube 视频。这是什么原因?我的 IP 地址是否被 Google API 禁止?
作为参考,我尝试加载的视频 ID 是 Sq9kl3ybqY0
。
一个解决方法是用嵌入的 URL 替换 youtube 中的 URL。
例如。如果您使用了像 youtube.com/watch?v=VIDEO_ID 这样的 URL,那么将其替换为像 youtube.com/embed/VIDEO_ID
这样的嵌入 URL
通常,当您的嵌入最初处于隐藏状态时,会发生此错误。在这种情况下,只需添加 ?html5=1
即可嵌入 URL.
我正在我的网站上嵌入一些 YouTube 视频。我一直收到一些投诉,说他们没有加载。我调查并注意到,在尝试播放它们时,我遇到了一些 403 Forbidden 错误:
查看 JSON 响应,我收到一些消息,通常说“调用者没有权限”。这是完整的 JSON 数据:
{
"error": {
"code": 403,
"message": "The caller does not have permission",
"errors": [
{
"message": "The caller does not have permission",
"domain": "global",
"reason": "forbidden"
}
],
"status": "PERMISSION_DENIED"
}
}
为什么会这样?我不认为我需要密钥或令牌来嵌入 YouTube 视频。这是什么原因?我的 IP 地址是否被 Google API 禁止?
作为参考,我尝试加载的视频 ID 是 Sq9kl3ybqY0
。
一个解决方法是用嵌入的 URL 替换 youtube 中的 URL。 例如。如果您使用了像 youtube.com/watch?v=VIDEO_ID 这样的 URL,那么将其替换为像 youtube.com/embed/VIDEO_ID
这样的嵌入 URL通常,当您的嵌入最初处于隐藏状态时,会发生此错误。在这种情况下,只需添加 ?html5=1
即可嵌入 URL.