2014-11-03 5 views
0

다이제스트 인증을 사용하는 서버와 통신하려고합니다. 다음 코드가 있습니다. Windows 8.1에서는 잘 작동하지만 Windows Phone에서는 "NullReferenceException : 개체 참조가 개체 인스턴스로 설정되지 않았습니다."라는 메시지가 나타납니다. 이것은 자격 증명 설정과 관련이있는 것으로 보입니다. 설정하지 않으면 서버에서 인증에 실패했습니다. 이 문제를 해결하는 방법에 대한 아이디어가 있습니까? 나는 윈도우 전화 응용 프로그램이 사용하고다이제스트 인증 WP 8.1

var filter = new HttpBaseProtocolFilter 
{ 
    AllowUI = false, 
    ServerCredential = 
    new PasswordCredential(
    "Your base url", 
    "Your user name", 
    "Your password") 
}; 

var httpClient = new HttpClient(filter); 

하는 인증하려면 : using Windows.Web.Http;
그냥 Windows Phone 용 그것을 사용하고 cleint를 만드는 것은 다음과 같이 작동에

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

윈도우 폰은 자신의 웹 클라이언트를 가지고 다이제스트 인증을 사용하여 웹에 대해 그래서 이것은 또한 귀하의 경우에도 효과가 있습니다.