为什么JavaScript报CORS错误,而Postman正常工作?
大家好!我是一名前端开发新手,几天来一直被一个问题困扰。我有一个简单的HTML/JavaScript网站,尝试向外部API(例如https://api.example.com/data)发送GET请求。在浏览器中,我收到错误:“请求的资源上不存在'Access-Control-Allow-Origin'标头”。然而,如果通过Postman发送完全相同的请求,一切正常——数据顺利返回。
这是我的代码:
```javascript
fetch('https://api.example.com/data')
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('错误:', error));
```
我使用的是普通的HTML文件,通过file://打开,没有服务器。起初我以为是代码的问题,但Postman能正常工作!为什么会这样?是浏览器bug还是我做错了什么?是否需要配置服务器?恳请用简单的话解释浏览器请求和Postman请求之间的区别,以及如何解决。