参考:MDN fetch
服务端配置
const cors = require("koa2-cors");
app.use(cors())
服务端这样配置后,前端页面访问接口还是报跨域的问题。
原因
由于我使用的是 fetch 去请求接口,且配置了 credentials 字段,代码如下:
fetch('http://192.168.1.111:3000/api/flow', {
credentials: 'include',
})
.then(res => {
return res.json();
})
.then(json => {
console.log('获取的结果', json);
return json;
})
解决
只需要将 credentials 字段的配置去掉就可以请求到服务端的接口数据了。
扩展
使用 axios 这样的请求库直接请求接口是可以获取到数据的,因为 axios 使用的是 xhr 的方式,和 fetch 不一样。