Sapui5 如何在ui5 oData.read()中设置内容类型:application/json?

Sapui5 如何在ui5 oData.read()中设置内容类型:application/json?,sapui5,Sapui5,当我调用XSet/$count时,我发现响应是xml格式的,这很难解析 我试着打电话 oModel.read("/XSet/$count", { urlParameters: "$format=json", filters: [new Filter(this._oFilterState.aTaskFilter, false)], }); 调用了XSet/$count?$format=json&$filter=(状态eq“未启动”) 返回 “系统查询选项“$form

当我调用
XSet/$count
时,我发现响应是xml格式的,这很难解析

我试着打电话

oModel.read("/XSet/$count", {
    urlParameters: "$format=json",
    filters: [new Filter(this._oFilterState.aTaskFilter, false)],       
});
调用了
XSet/$count?$format=json&$filter=(状态eq“未启动”)

返回

“系统查询选项“$format”与返回类型不兼容。”

但是
XSet/$count?$filter=(status eq'NOT_STARTED')&$format=json
可以返回json格式的错误响应


我想尝试第二种方法,即将
内容类型:application/xml
更改为
内容类型:application/json
。但是在API中找不到此项:

Model.read方法通过将Accept头设置为

接受:application/atom+xml、application/atomsvc+xml、application/xml

但是,计数请求是纯文本响应。您可以通过两种方式获得计数,一种是将模型的有效负载设置为使用json,另一种是jQuery AJAX调用

您可以将json参数设置为true来初始化模型

var oModel = sap.ui.model.odata.v2.ODataModel("Service_URL",{
   json:true
});

这将传递一个带有Accept:application/json的头,当您调用URL
http://host:port/path/XSet/$count
是否直接在浏览器中?它不应该是XML,而是一个实际的数字:Hi@Marc,是的,成功时它返回了数字,但我正在为这个调用执行错误处理,失败时它返回XML格式的响应。我问过我的后端同事,他让我尝试更改
内容类型