2014-09-12 62 views
1
singleStepAuthRealmChallengeHandler.handleChallenge = function(response){ 
var authRequired = response.responseJSON.authRequired; 
user_id=response.responseJSON.loginUser; 
if (authRequired == true){ 
    $("#AppDiv").hide(); 
    $("#AuthDiv").show(); 
    $("#AuthPassword").empty(); 
    $("#AuthInfo").empty(); 
    if (response.responseJSON.errorMessage){ 
     $("#AuthInfo").html(response.responseJSON.errorMessage); 
    } 

} else if (authRequired == false){ 

$('#AuthSubmitButton').attr('href','home.html'); 
    $("#AuthSubmitButton").click(); 
    $("#AuthSubmitButton").click(); 
    singleStepAuthRealmChallengeHandler.submitSuccess(); 
}}; 
$("#AuthSubmitButton").bind('click', function() { 
var username = $("#AuthUsername").val(); 
var password = $("#AuthPassword").val(); 

var invocationData = { 
    adapter : "SingleStepAuthAdapter", 
    procedure : "verifyLogin", 
    parameters : [ username, password ] 
}; 

var options= { 
     onSuccess: success, 
     onFailure: failure`enter code here` 
}; 
WL.Client.invokeProcedure(invocationData, options);}); 
function success(response) 
{ 
var result=JSON.stringify(response); 
var invocationData = { 
     adapter : "SingleStepAuthAdapter", 
     procedure : "submitAuthentication", 
     parameters : [ result ] 
    }; 
singleStepAuthRealmChallengeHandler.submitAdapterAuthentication(invocationData, {});} 

這種方法是否正確?當用戶登錄時它不工作,不會重定向到主頁。 :-(如何使用Web服務驗證Worklight基於Adapter的身份驗證中的用戶名和密碼?

這裏首先我試圖調用過程獲取用戶名密碼從服務器和成功函數我打電話提交身份驗證,但當用戶登錄,下次我訪問安全過程時,它不重定向直接主頁,而不是,它說用戶已經在其登錄假設運行得到authrequired = false,並轉到主頁。

我使用REST API的來獲取用戶名和密碼,並傳遞給submitauthentication功能。

是否因爲調用兩次有問題我不能找出來請幫忙。

+0

得到了解決方案很簡單:-) – 2014-09-20 19:59:20

回答

0

我驗證了服務器端的用戶名密碼本身提到的適配器混搭。您可以參考此鏈接Mashup

相關問題