2009-04-27 57 views
5

是否有可能使用AJAX將證書傳遞給請求www認證的網絡服務器?使用ajax處理www認證請求?

我想登錄到使用.NET Bsic www認證的網站,並使用ajax傳遞憑證。當用瀏覽器訪問服務器時,瀏覽器會提示用戶使用認證/登錄窗口。

HTML標頭包含此:

WWW-Authenticate: Basic 
realm="hosting.xp" 
MicrosoftSharePointTeamServices: 6.0.2.6568 
X-Powered-By: ASP.NET 

我想從一個Ajax調用對象它來訪問網站「幕後」,但我不知道如何處理HTTP標頭的請求認證。

我想Ajax調用導致被記錄在(Cookie集),使用戶可以在以後procedd到現場,是一個特定的用戶已「登錄。

可以這樣做我在這裏描述的方式?

回答

5

您可以在URL中傳遞用戶名和密碼,就像這樣:

http://username:[email protected]/secure

下面是用jQuery的例子:

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script> 
<script type="text/javascript"> 
$(document).ready(function(){ 
    $('a.logMeIn').click(function(){ 
     $.get('http://username:[email protected]/secure', null, function(response) { 
      alert(response); 
     }); 
    }); 
}); 

</script> 

<a href="#" class="logMeIn">Log me in!</a> 
+0

如果密碼比其他的東西這會帶來問題字母數字字符......你如何解決這個問題? – 2010-07-21 11:48:00

0

使用http身份驗證不需要cookie,憑據由瀏覽器保存,或者在您的情況下用JavaScript狀態保存初始請求。