0

我正在一个从 API 请求一些数据的网站上工作。我请求了很多数据,所以我使用了一个模板字符串。

模板字符串被正确解析,但在 json 中它搞砸了。它随机为一些数字加了一个“.”。在号码的末尾。

例如“ http://logs.tf/json/2223521”=>“http://logs.tf/json/2223521

需要注意的是我正在使用async: false

这是我的代码:

    function myTest() {
        for (Id =2223535; Id >= 2223500; Id--) {
            console.log(Id, `http://logs.tf/json/${Id}`);//returns the proper value
            $.getJSON(`http://logs.tf/json/${Id}`, function (idData) { //sometimes adds a dot to the url
                console.log("success");
            });
        }
    }

例如我从控制台得到的(对于 myTest()):

2223523 "http://logs.tf/json/2223523"
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://logs.tf/json/2223523. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing).  (unknown)
2223522 "http://logs.tf/json/2223522"
success
2223521 "http://logs.tf/json/2223521"
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at http://logs.tf/json/2223521. (Reason: CORS header ‘Access-Control-Allow-Origin’ missing).
4

1 回答 1

0

好吧,我想我明白了。它与我发出 Api 请求的 api 服务有关,如果我执行的请求太多,我会从上面得到错误。

如果我添加一些任意计算,例如“let number = 452^2”,问题就会消失,因为它会延迟一个请求和下一个请求之间的时间。

它也没有神秘地添加“。” 对于刚刚出现的请求,因为吐出的错误在句末使用了一个点。

于 2019-04-14T16:56:37.737 回答