我在尝试加载 Youtube 数据 api 时收到 http 错误代码 307?

I get a http errorcode 307 when trying to load Youtube Data api?

我尝试加载 Youtube 数据 API(通过将其注入我的 header 部分)。

以前还挺好用的,突然就只收到307个响应码(没有实际内容)。

307 为 temporary_redirect,此页:https://developers.google.com/youtube/v3/docs/core_errors

告诉我通过将请求转发到 307 响应的位置 header 中所述的位置来获取内容。问题是响应的位置 header 中没有任何内容! :-(

有谁知道发生了什么、如何解决以及如何防止它再次发生? (我是否应该创建代码以在收到 307 响应时将请求重新发送到新的 URI??)

这是我的注入代码(但它曾经完美运行):

var YTDtag = document.createElement('script'),
            YTItag = document.createElement('script');
        YTDtag.src = "https://apis.google.com/js/client.js?onload=apiReady"; // load YouTube data API
        YTItag.src = "https://www.youtube.com/iframe_api"; // load YouTube Iframe API
        var firstScriptTag = document.getElementsByTagName('script')[0];
        firstScriptTag.parentNode.insertBefore(YTDtag, firstScriptTag);
        firstScriptTag.parentNode.insertBefore(YTItag, firstScriptTag);

但是我从 https://apis.google.com/js/client.js?onload=apiReady 得到的唯一响应是 307 号码,因此我的 apiReady 永远不会被调用。

如果我尝试通过将页面放在浏览器位置字段中来加载页面 "manually",它似乎可以正常加载 - 但当我尝试通过我的 js 加载它时却没有? :-/

要缩小此问题的范围,请检查以下内容:

  • 你是只在你自己的 browser/on 你自己的机器上有这个问题,还是在其他机器上也有?

  • 也许您安装的任何隐私 plugins/extensions 都在干扰它?

如果情况并非如此,并且该问题在其他机器上也可重现 – 那么您可能需要寻求 Google 支持人员的帮助。


(根据 OP 的要求添加为答案。可能不是 对此的明确答案,但如果这有助于调试问题或缩小问题范围,那就这样吧……)