所以我在SAP UI5 Mock Server上遇到问题。
我有以下ajax请求
$.ajax({
url: sBackendURL + "hearings?page=0",
method: "POST",
contentType: "application/json",
dataType: "json",
data: "{}",
success: function(data, textStatus, request) {
dfd.resolve(data);
},
error: function(rsp) {
dfd.reject();
var oEventBus = sap.ui.getCore().getEventBus();
oEventBus.publish("Application", "Error", rsp);
}
});
我在模拟服务器上也有以下attachAfter
var fnHearingsPostResponse = function(oEvent){
var oXhr = oEvent.getParameter("oXhr");
if (oXhr && oXhr.url.indexOf("page") > -1) {
oEvent.getParameter("oFilteredData").results.splice(3, 100);
}
};
oMockServer.attachAfter("POST", fnHearingsPostResponse, "hearings");
现在有了上面的代码,每次我启动ajax请求时,我的期望是Mock Server应该捕获该请求并调用我的fnHearingsPostResponse函数,但事实并非如此,而是抛出HTTP 404。
如果我在ajax请求和oMockServer.attachAfter方法中都从GET更改了方法,则一切正常。按预期,模拟服务器将调用fnHearingsPostResponse函数。
如果我将请求类型保留为原样(“ POST”),而将网址更改为
url: sBackendURL + "hearings?page=0"
收件人
url: sBackendURL + "hearings"
一切正常。
问题似乎是POST和自定义URL参数的组合会引起问题,但是根据文档Here和Here,我觉得我应该能够做到这一点。
有人知道我在这里可能会想念什么吗?
谢谢。