我无法找到,为什么XMLHttpRequest有效并且使用fetch或axiom不起作用。端点是不变的。 这是要比较的代码...... XMLHttpRequest实际上返回文本, fetch不会返回任何内容
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) {
})
答案 0 :(得分:2)
不要这样做:
mode: 'no-cors'
它告诉fetch你想要发出请求(告诉服务器一些东西)但是不想读取响应(可能被同源策略禁止)。此设置允许您执行此操作而不会抛出通常会得到的错误。由于您说您不想阅读回复,因此fetch不会尝试为您提供响应。
答案 1 :(得分:0)
删除模式:' no-cors'实际上把生命的反应带到了生命中。以防有人遇到同样的问题...... 所以仍然有一个问题,为什么fetch以这种方式工作,导致无人问津 当你没有得到任何反应时,它几乎没用。