我对ajax很新,我遇到了问题,任何可用的stackoverflow线程都无法解决这个问题。我有流名称的数组,我使用ajax通过使用Twitch API获取有关它们的详细信息。对于其中一些请求,我收到以下错误:
Error: callback was not called
at Function.error (VM11084 jquery.min.js:2)
at b.converters.script json (VM11084 jquery.min.js:4)
at Nb (VM11084 jquery.min.js:4)
at A (VM11084 jquery.min.js:4)
at HTMLScriptElement.c (VM11084 jquery.min.js:4)
at HTMLScriptElement.dispatch (VM11084 jquery.min.js:3)
at HTMLScriptElement.q.handle (VM11084 jquery.min.js:3)
我发现生成的url(在下面的代码中检查url变量)是好的,当我将它粘贴到chrome的搜索栏中时,它会导致正确的结果。最令人困惑的部分是它适用于streamsNames数组中的4个字符串,而对于其他字符串,它确实返回此错误代码。我google了很多,但我找不到合适的解决方案或只是解释这种行为。
以下是代码的相关部分:
function updateStreamInfo() {
streamsNames.forEach(function getStreamsCurrentData(streamName) {
var url = 'https://wind-bow.glitch.me/twitch-api/streams/' + streamName;
console.log(url);
$.ajax({
url: url,
dataType: 'JSONP',
jsonpCallback: 'callback',
type: 'GET',
success: function (data) {
console.log(data);
var stream;
if(data.stream === null) stream = new Stream(streamName, "", "");
else stream = new Stream(streamName, data.stream.game, data.stream.channel.logo);
},
error: function (xhr, ajaxOptions, thrownError) {
console.log(thrownError);
}
})
})}
还有一件事:这一切都在codepen.io中运行,但我不知道在这种情况下是否会对任何事情产生任何影响。
任何想法可能是什么问题?