当前位置: 首页 > Web前端 > JavaScript

回答读者问题:为什么我的manifest.json文件在试用版

时间:2023-03-27 17:38:45 JavaScript

无法正确加载?有教程的读者问我:我已经完成了以下两步的学习:SAPUI5应用开发教程10-什么是SAPUI5应用DescriptorDescriptorSAPUI5应用开发教程一百三十三-SAP的加载解析原理UI5应用元数据文件manifest.json解释本地VisualStudioCode开发一个SAPUI5应用,使用命令行ui5serve启动打开本地开发服务器,访问localhost:8080,可以看到index.html和manifest。json文件在同一目录中。但是点击index.html后,应用无法正常加载,出现白屏。在Chrome开发者工具控制台面板中,出现以下错误消息:AccesstoXMLHttpRequestat'https://sapui5.hana.ondemand....'fromorigin'http://localhost:8080'hasbeenblockedbyCORSpolicy:请求的资源上不存在“Access-Control-Allow-Origin”标头。这个问题有点奇怪。显然,我们的SAPUI5应用程序的manifest.json文件应该从localhost:8080目录加载。为什么运行时实际上从这个错误的地址加载它https://sapui5.hana.ondemand.com/resources/singleFile/manifest.json?sap-language=EN来加载它?很明显,https://sapui5.hana.ondemand.com不能有我们应用写的manifest.json文件,所以这个报错字面意思就是跨域报错。其实问题的根源在于,我们自己写的应用程序中存在一个bug,导致SAPUI5框架的bootloader从错误的地址加载了manifest.json文件。这是解决此问题的正确方法。