我不知道为什么XMLHttpRequest有效,而使用fetch或axiom不起作用。端点是恒定的。
这是要比较的代码...
XMLHttpRequest实际上返回文本,
提取不返回任何内容

var r = new XMLHttpRequest()
    r.open('GET', 'http://localhost:1337/ticks', true)
    r.onreadystatechange = function () {
        if (r.readyState !== 4 || r.status !== 200) {
            return
        }
    }
    r.send()

    fetch('http://localhost:1337/ticks', {
            method: 'GET',
            mode: 'no-cors'
            }).then(function (response) {
                return response.text()
            }).then(function (text) {
                console.log(text)
    }).catch(function (error) {
    })

最佳答案

不要这样做:


mode: 'no-cors'



它告诉fetch您想要发出请求(告诉服务器一些信息),但又不想读取响应(Same Origin Policy可能禁止该响应)。此设置使您可以执行此操作,而不会引发通常会出现的错误。由于您说过您不想阅读响应,因此fetch不会尝试使响应可供您使用。

关于javascript - 提取与XMLHttpRequest的可靠性,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/47972241/

10-09 20:10
查看更多