在本教程的前一篇文章:SAP UI5 初学者教程之二十四 - 如何使用 OData 数据模型 我们试图在本地运行的 SAP UI5 应用(localhost:8080)里, 访问远端的 OData 服务 https://services.odata.org/V2/Northwind/Northwind.svc,会遇到跨域访问的相关错误:
当时步骤 24
给出的解决方案就是,使用 chrome.exe 的启动参数 --disable-web-security, 来临时禁掉其安全策略检查。
本文介绍另一种使用本地架设的代理服务器的方法,同样能达到避免该跨域错误的目的。
本文使用到的 SAP UI5 应用的源代码,同步骤 24
区别很小,新增了一个代理服务器的实现,位于文件 proxy.js 里。
我们将步骤 24 里的 webapp 目录下的 package.json 里的 invoiceRemote,uri 之前增添一个 http://localhost:3002/ 的前缀,完整的 uri 现在变成了:
http://localhost:3002/https://services.odata.org/V2/Northwind/Northwind.svc/