为什么在使用XMLHttpRequest()而不是表单时必须处理Access-Control-Allow-Origin?

时间:2018-02-12 22:15:51

标签: javascript html xmlhttprequest cors cross-domain

我在使用XMLHttpRequest()发出请求时遇到问题并获得了Access-Control-Allow-Origin错误,但是当我使用下面的表单时,我没有看到任何问题。表单是否允许访问,这种差异的原因是什么?

const f = document.createElement("form");
f.setAttribute("method", 'post');
f.setAttribute("action", '****');

const f = document.createElement("input");
f.setAttribute("type", "hidden");
f.setAttribute("name", 'id');
f.setAttribute("value", token);

document.appendChild(f);
$frm.submit(f);

1 个答案:

答案 0 :(得分:0)

正在为跨域请求设置

Access-Control-Allow-Origin标头。 因此,当您通过XMLHttpRequest()执行跨域请求时,您必须允许请求来源。

表单执行相同的域请求,因此不需要Access-Control-Allow-Origin标头。