繁体   English   中英

将onprogress侦听器附加到XMLHttpRequest.upload可以停止发送POST数据(wtf?)

[英]Attaching onprogress listener to XMLHttpRequest.upload stops POST data from being sent (wtf?)

这是什么废话

这里的代码通过POST请求发送数据。 我知道这是因为我的Node服务器收到了块。

let req = new XMLHttpRequest();
req.onload = () => {
    console.log("Done");
};

req.open('POST', location.origin + ':1337');
req.send('test');

一切正常

然而。 第二个我将其更改为此

let req = new XMLHttpRequest();
req.onload = () => {
    console.log("Done");
};
req.upload.onprogress = (e) => {
    console.log("Progress");
};

req.open('POST', location.origin + ':1337');
req.send('test');

,它不再发送数据了。

我的Node服务器并不特殊。 它只是运行在:1337上的httpServer实例,console.log-ing接收到的数据块。

这里发生了什么? 侦听器为何会中断请求?

事实证明,添加侦听器会使浏览器事先发送OPTIONS请求。 我现在没有正确回应。

谢谢@sideshowbarker!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM