在本教程第 24 个步骤里,我们介绍了 SAP UI5 OData 模型最基本的使用方法:
SAP UI5 应用开发教程之二十四 - 如何使用 OData 数据模型
我们通过 url http://localhost:8080/webapp/index.html?sap-ui-debug=true 访问这个应用的调试模式,能够在 Chrome 开发者工具 network 面板里,观察到一个通过 SAP UI5 框架自动发送的 OData 元数据请求,url 如下:
https://services.odata.org/V2/Northwind/Northwind.svc/$metadata?sap-language=EN
我们把鼠标放到 Initiator
栏的 datajs-dbg.js
文件上,会弹出一个对话框:
这个对话框里显示的函数调用栈表明,在本应用的 SAP UI5 Component 实例化的时候,自动读取 webapp 文件夹下的 SAP UI5 应用元数据文件 manifest.json 并解析,
SAP UI5 应用开发教程之一百三十三 - SAP UI5 应用元数据文件 manifest.json 的加载和解析原理讲解
根据 manifest.json 文件里定义的远端 OData 服务 url(维护在 dataSources 区域里),自动创建一个 ODataModel 实例。这个实例的构造函数,如上图绿色高亮区域所示,会调用 ODataMetadata._loadMetadata, 自动读取其元数据。
以上描述的行为都是 SAP UI5 框架自动帮我们完成的。那么 SAP UI5 应用开发人员,有没有办法自己通过编程的方式来手动读取
一个 OData 服务的元数据?
当然有,这就是本文余下部分要介绍的内容。