先上解决方法:在函数中添加(不要用xhr请求)
// 只需要关心第二个参数
res.setHeader('Access-Control-Allow-Origin', 'http://localhost:8080');
首先:什么是跨域?
Cross Domain Request:从一个资源请求另一个资源,二者所在的请求地址不同,域名不同、端口号不同、请求协议不同。
它是由浏览器的同源策略造成的,是浏览器对JavaScript施加的安全限制。
如何区分当前的请求是跨域请求?
在前端使用XHR对象发起请求时 浏览器 会将请求的发送地址和请求地址 的 协议 域名 端口号 做 字符串的匹配
浏览器允许跨域请求的情形:
IMG、LINK、SCRIPT、IFRAME ...
浏览器禁止跨域请求的情形:
XHR —— 浏览器处于安全考虑,禁用了XHR的跨域请求(其实服务器给出了响应消息,但浏览器不让使用)
jsonp
jsonp解决跨域只能用get方法