Итак, у меня проблема с сервером UI5 Mock.
У меня есть следующий запрос 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 на сервере Mock
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.
Если я изменяю свой метод из GET как в запросе ajax, так и в методе oMockServer.attachAfter, все работает нормально. Как и ожидалось, Mock-сервер вызывает функцию fnHearingsPostResponse.
Также, если я оставляю тип запросакак есть («POST»), но вместо этого измените URL-адрес с
url: sBackendURL + "hearings?page=0"
на
url: sBackendURL + "hearings"
Все работает, как и ожидалось.
Проблема заключается в том, чтоСочетание параметров POST и Custom URL-адреса вызывает проблемы, но в соответствии с документацией Здесь & Здесь , я чувствую, что могу это сделать.
Кто-нибудь знает, чего мне здесь не хватает?
Спасибо.