我正在尝试使用摘要式身份验证与服务器通信。我有以下代码。 这在Windows 8.1中运行良好,但在Windows Phone中,我得到“NullReferenceException:对象引用未设置为对象的实例。”这似乎与设置凭据有关。如果我没有设置它,我很简单从服务器获得失败的身份验证响应。关于如何解决这个问题的任何想法?
var uri = new Uri(url);
var cache = new CredentialCache();
cache.Add(uri, "Digest", new NetworkCredential(Username, Password));
HttpClient client = new HttpClient(new HttpClientHandler { Credentials = cache });
return await client.GetStringAsync(uri);
答案 0 :(得分:0)
Windows手机在using Windows.Web.Http;
中有自己的网络客户端
只需将它用于Windows手机,创建一个cleint就可以这样工作:
var filter = new HttpBaseProtocolFilter
{
AllowUI = false,
ServerCredential =
new PasswordCredential(
"Your base url",
"Your user name",
"Your password")
};
var httpClient = new HttpClient(filter);
我在Windows手机应用中使用此功能来使用摘要身份验证对网络进行身份验证。所以这也适用于你的情况。