Я попытался реализовать очень простую аутентификацию на основе форм с помощью приложения Worklight. Однако, когда я активирую функцию входа в систему, она останавливается с ошибкой 404, говоря, что /apps/services/j_security_check не может быть найден. Как ни странно, когда я запускаю пример проверки подлинности на основе форм с сайта IBM developerWorks, он работает просто отлично. Я не могу понять, в чем разница, все функции, связанные с аутентификацией, абсолютно одинаковы, но в моем собственном приложении я получаю это сообщение об ошибке. Вот соответствующая часть из источника:
var sampleAppRealmChallengeHandler = WL.Client.createChallengeHandler("SampleAppRealm");
sampleAppRealmChallengeHandler.isCustomResponse = function(response) {
if (!response || response.responseText === null) {
return false;
}
var indicatorIdx = response.responseText.search('j_security_check');
if (indicatorIdx >= 0){
return true;
}
return false;
};
sampleAppRealmChallengeHandler.handleChallenge = function(response) {
$.mobile.changePage($('#Login'));
$('#passwordInputField').val('');
};
sampleAppRealmChallengeHandler.submitLoginFormCallback = function(response) {
var isLoginFormResponse = sampleAppRealmChallengeHandler.isCustomResponse(response);
if (isLoginFormResponse){
sampleAppRealmChallengeHandler.handleChallenge(response);
} else {
$.mobile.changePage($('#page0'));
sampleAppRealmChallengeHandler.submitSuccess();
}
};
function proceedWithLogin() {
console.log("proceedWithLogin");
var reqURL = '/j_security_check';
var options = {};
options.parameters = {
j_username : $('#loginEmail').val(),
j_password : $('#loginPassword').val()
};
options.headers = {};
sampleAppRealmChallengeHandler.submitLoginForm(reqURL, options, sampleAppRealmChallengeHandler.submitLoginFormCallback);
}
Любая идея, что может быть причиной этого? Есть ли скрытые настройки проекта, которые я пропустил? Спасибо!