世界上的 SAPUI5 社区是如此之小,所以我需要看看是否有人可以帮助我解决这个问题或解释接下来可能发生的事情。
我有一个 UI5 应用程序,它使用 oDataModel 使用网关服务,当我尝试发出 POST 请求时,服务响应非常快,但是我第二次调用相同的服务时,请求的次数急剧增加,如 200%。最奇怪的是,第一个请求和第二个请求是一样的。
在我的浏览器中,第一个请求的成功时间约为 10 秒,而第二个请求(与第一个请求相同)的成功时间为 2-3 分钟。
在我的浏览器中,第二个请求以“待处理”状态显示 2-3 分钟,但在网关中,请求在 20 秒内正确完成。
这是我第一次和第二次调用 oDataModel 的方式。
服务
var oModel = new sap.ui.model.odata.ODataModel(serviceUrl);
oModel.headers = {
"X-Requested-With": "XMLHttpRequest",
"Accept": "application/atom+xml,application/atomsvc+xml,application/xml,application/atom+xml",
"Content-Type": "application/atom+xml",
"DataServiceVersion": "2.0"
};
oModel.setCountSupported(false);
oModel.setSizeLimit(this._maxSize);
oModel.attachRequestFailed(this.showLoadError);
然后,在我的控制器中,我执行以下操作。
控制器
function initializeOrders(){
var oParameters = {
Lgnum: localStorage.Yard,
PlanStatus: "",
Orders: [{}],
Transports: [{}]
};
oModel.create("/IncomingSet", oParameters,
null,
jQuery.proxy(this._readODataOnSuccess, this),
jQuery.proxy(this._readODataOnError, this)
)}
这个initializeOrders函数在应用程序启动时执行,如果有变化我想刷新应用程序信息时也会执行它。
如果有人可以帮助我解决这个问题,我将非常感激,因为不在 sap 论坛中我没有找到任何好的东西