如何处理使用 SAP UI5 消费真实的 OData 服务时遇到的跨域问题
我本地开发了一个 SAP UI5 应用,消费真实的 OData 服务:
https://services.odata.org/Northwind/Northwind.svc
会遇到跨域问题错误:CORS error
Access to XMLHttpRequest at 'https://services.odata.org/Northwind/Northwind.svc/$metadata?sap-language=EN' from origin 'http://localhost:3002' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: It does not have HTTP ok status.
因为 https://services.odata.org/Northwind/Northwind.svc 这个 OData 服务不是我们自行实现的,我们无法更改其实现端,添加 CORS policy 相关的协议字段,因此只能想其他办法。
出于开发目的,我们可以暂时禁掉 Chrome 的安全检查,来绕过这个错误。
新建一个批处理文件,输入下列内容:
cd C:\Program Files (x86)\Google\Chrome\Applicationchrome.exe --user-data-dir="C:/temp" --disable-web-security
此时启动的 Chrome,会显示一行警告信息:
You are using an unsupported command-line flag: --disable-web-security. Stability and security will suffer.
此时请求 OData 元数据,不再有跨域错误了:
赞 (0)