我们在application-descriptor.xml
中定义了应用安全性的worklight应用。我们有挑战处理者来应对挑战。在wlCommonInit()
函数中,我们称WL.Client.Connect()
函数轮流触发质询处理程序。用户可以输入用户名/密码并成功验证。一切都很好,直到这一点。Worklight App提交大量HTTP 401请求
在挑战处理程序成功验证后,我们调用ChallengeHandler.submitSuccess()
方法来通知worklight关于成功验证。
此调用应导致成WL.client.connect() onSuccess
回调函数,而是它使大量的请求URL ../App/iphone/init
并与401后1-2分钟,最终它得到HTTP 200为特定请求retuns然后进入onSuccess()
。
任何想法为什么这么多请求导致401?
下面的代码片段,在main.js ...
WL.Client.connect({
onSuccess : callbackOnSuccess,
onFailure : callbackOnFailure
});
在challengeHandler.js
..
$('#loginButton').bind('click', function() {
var reqURL = '/j_security_check';
var options = {};
options.parameters = {
j_username : $('#username').val(),
j_password : $('#password').val()
};
options.headers = {};
ChallengeHandler.submitLoginForm(reqURL, options, ChallengeHandler.submitLoginFormCallback);
});
ChallengeHandler.submitLoginFormCallback = function(response) {
WASLTPARealmChallengeHandler.submitSuccess();
};
更新:您是正确的。我们在农场有两台服务器,似乎web服务器插件没有设置会话关联。非常感谢您的回复。 –