Javascript 为什么Youtube API在尝试将视频加载到我的网站时显示视频不可用?

Javascript 为什么Youtube API在尝试将视频加载到我的网站时显示视频不可用?,javascript,api,youtube-api,Javascript,Api,Youtube Api,我的网站正在使用youtube api加载用户可以收听的视频。我以前从未见过这种情况,直到现在,我想知道为什么会出现这种情况 我的密码是 if (SettingsEnabled == 1) { $("#players").empty(); var videoId = document.getElementsByClassName("songVideo")[0].id; player = new YT.Player("players&

我的网站正在使用youtube api加载用户可以收听的视频。我以前从未见过这种情况,直到现在,我想知道为什么会出现这种情况

我的密码是

if (SettingsEnabled == 1) {
  $("#players").empty();
  var videoId = document.getElementsByClassName("songVideo")[0].id;
  player = new YT.Player("players", {
    height: "390",
    width: "640",
    playerVars: {
      origin: "https://www.musicrandomizer.com/Home",
    },

    videoId: videoId,
    widget_referrer: window.location.href,

    events: {
      onReady: onPlayerReady,
      onStateChange: onPlayerStateChange,
    },
  });

  function onPlayerReady(event) {
    event.target.playVideo();
  }

  function onPlayerStateChange(event) {
    if (event.data == YT.PlayerState.ENDED) {
      checkIfPaused();
      $("#VideoEnd").attr("value", 1);
      $("#players").empty();
      /*     startup();*/
    }
  }

  var Info = GetCookie("Settings");

  $.ajax({
    type: "POST",
    url: "../PHP/GetSongsSettings.php",
    dataType: "json",
    data: {
      Info: Info,
    },
    cache: false,
    success: function (data) {
      $("#players").css("left", "-50%");
      if (data == null) {
        var Info = $("#noSongsAvailable").text("No songs are available.");
        setTimeout(function () {
          var Info = $("#noSongsAvailable").text("");
        }, 5000);
      }
      $("#SongInfo").fadeIn();

      document.getElementById("Artist").innerHTML = "Artist: " + data["Artist"];
      document.getElementById("Album").innerHTML = "Album: " + data["Album"];

      window.top.$("#players").attr("src", "about:blank");
      setTimeout(function () {
        window.top
          .$("#players")
          .attr(
            "src",
            "https://www.youtube.com/embed/" +
              data["URL"] +
              "?enablejsapi=1&autoplay=1"
          );
      }, 2000);
      startup();
    },
  });
}
在我的JS文件的顶部

var tag = document.createElement("script");

tag.src = "https://www.youtube.com/iframe_api";
var firstScriptTag = document.getElementsByTagName("script")[0];
firstScriptTag.parentNode.insertBefore(tag, firstScriptTag);
var player;

我试图在网上阅读,看看问题可能是什么,一些消息来源说这是因为youtube视频本身的嵌入设置,但我不确定情况是否如此,因为我知道有些视频以前播放过,但现在加载时显示不可用。我还在网上读到,这可能与youtube API PlayerBars的起源有关,我在年补充说,现在仍然存在这个问题。我还缺什么吗?谢谢

看来这已经解决了。但还是很奇怪