Silverlight 4中客戶機http堆棧的新功能之一是提供網絡憑據的功能。當我使用此功能時,Windows會顯示一個提示用戶輸入登錄名和密碼的「Windows安全性」消息框(文本框中的內容是「服務器xx在xx上需要用戶名和密碼警告:此服務器正在請求您的用戶名並以不安全的方式發送密碼(沒有安全連接的基本認證)。「)。我設置的登錄名和密碼如下所示,所以我不確定爲什麼會顯示。我的代碼是:爲什麼Silverlight 4 ClientHttp WebRequest提示用戶輸入登錄名和密碼?
var request = WebRequestCreator.ClientHttp.Create(new Uri("http://myserver:8080/gui/?list=1"));
request.Credentials = new NetworkCredential("login", "password");
request.BeginGetResponse(new AsyncCallback(OnRequestComplete), request);
如果我在消息箱中輸入用戶名和密碼,請求成功完成。出於各種原因,我寧願提示用戶輸入登錄名和密碼,所以我希望儘可能避免使用郵箱。
我的設置是Silverlight 4 final,VS 2010 final,Windows 7 x86。該應用程序在具有提升權限的瀏覽器之外。