cors错误,但nodejs中没有错误

u4dcyp6a  于 2021-09-29  发布在  Java
关注(0)|答案(2)|浏览(463)

我正在做一个有趣的小项目,从一个节点脚本开始,使用axios对api进行get调用。我让它工作,并决定我想把它移动到一个普通的脚本中使用的html文件,所以我把它移动到一个html文件之间 <script></script> 标记并做了一些更改,使es6更加干净,据我所知,es6不应该破坏任何东西,但现在我发现了错误 (Reason: CORS header ‘Access-Control-Allow-Origin’ missing) . 从我收集的信息来看,这是服务器必须设置的,因此我无能为力。我只是不知道它为什么和node一起工作?
以下是我代码的要点:
nodejs:

axios('url_here')
    .then(data => {/* Some processing here */})

html文件中的独立js:

const data = await (await fetch('url_here')).json();
/* Same processing here as what I did in Node */
mpgws1up

mpgws1up1#

cors检查是浏览器的安全功能。这就是为什么它可以在node.js中工作,但不能在浏览器中工作。
“cors机制支持浏览器和服务器之间的安全跨源请求和数据传输。现代浏览器在API(如xmlhttprequest或fetch)中使用COR来降低跨源http请求的风险

vwhgwdsa

vwhgwdsa2#

如果需要对服务器进行get调用,则需要在axios调用中提供此功能,如

axios.get('url')

axios({method: 'get', url: 'your_url'})

相关问题