SAP UI5 OData 模型(V2) 的使用方法介绍

OData 模型是服务器端模型,这意味着数据集仅在服务器上可用,客户端即 SAP UI5 应用只知道当前可见(请求)的数据。 排序和过滤等操作在服务器上完成,然后将处理结果返回给客户端。 客户端向服务器发送请求并显示返回的数据。

注意:对后端的请求由 ODataModel 提供的列表绑定 (ODataListBinding)、上下文绑定 (ODataContextBinding) 和 CRUD 函数触发。 属性绑定 (ODataPropertyBindings) 不会触发请求。

SAP UI5 实现了以下两个版本的 OData 模型:sap.ui.model.odata.ODataModel 和 sap.ui.model.odata.v2.ODataModel。 v2.ODataModel 具有改进的功能集,新功能将仅在此模型中实现。 sap.ui.model.odata.ODataModel 已弃用。 我们建议仅使用 v2.ODataModel。

如下图所示:

SAP UI5 OData 模型(V2) 的使用方法介绍

对于 OData 服务,开发人员可以使用 URL 参数进行配置。 SAPUI5 根据各自的绑定自动设置大多数 URL 参数。 例如,对于身份验证令牌或常规配置选项,可以向请求 URL 添加其他参数。 某些参数不能包含在每个请求中,而只能添加到特定的列表或上下文绑定中,例如 expand 或 select。 为此,绑定方法提供了传递参数映射的选项,然后将其包含在针对此特定绑定的所有请求中。 OData 模型目前仅支持 expand 和 select。

下面是几种添加参数到 Service url 的办法:

第一种:

// "ODataModel" required from module "sap/ui/model/odata/v2/ODataModel"
var oModel = new ODataModel("http://myserver/MyService.svc/?myParam=value&myParam2=value");

这些参数将包含在发送到 OData 服务器的每个请求中。

还可以传递仅用于 $Metadata 请求的 URL 参数 (MetadataUrlParams) 以及仅包含在数据请求中的 URL 参数 (serviceUrlParams)。 参数作为映射传递:

// "ODataModel" required from module "sap/ui/model/odata/v2/ODataModel"
var oModel = new ODataModel({ 
    serviceUrl: "http://services.odata.org/northwind/northwind.svc",    
    serviceUrlParams: {
        myParam: "value1",
        myParam2: "value2"
    },
    MetadataUrlParams: {
        myParam: "value1",
        myParam2: "value2"
    }
});
Custom HTTP headers

可以添加随每个请求发送的自定义标头。

向 OData 模型构造函数提供标头映射或使用 setHeaders() 函数:

使用 mparameters 映射传递自定义标头:

var oModel = new sap.ui.model.odata.v2.ODataModel({
    headers: {
        "myHeader1" : "value1",
        "myHeader2" : "value2"
    }
});

原文地址:https://cloud.tencent.com/developer/article/2133817

总结

以上是真正的电脑专家为你收集整理的SAP UI5 OData 模型(V2) 的使用方法介绍的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得真正的电脑专家网站内容还不错,欢迎将真正的电脑专家推荐给好友。

你可能想看:
分享给朋友: