SAP UI 5 Mock Server POST не возвращает данные при использовании пользовательского параметра в URL - PullRequest
0 голосов
/ 26 октября 2018

Итак, у меня проблема с сервером 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-адреса вызывает проблемы, но в соответствии с документацией Здесь & Здесь , я чувствую, что могу это сделать.

Кто-нибудь знает, чего мне здесь не хватает?

Спасибо.

...