Windows.Web.HttpClient and it’s PasswordCredential class

Microsoft is changing the Api to get HTTP content from version to version. Also the type of possible authentication mechanism behind is changing all the time. So in Universal App for Windows 10, Windows Phone or Windows Store 8 or 8.1. the underlying platform for HTTP access is different in several areas.

System.Net.HttpClient

The System.Net.HttpClient from NuGet that is using the different underlying platforms and therefore is making the same problems. To not being totally confused, it is better not to use System.Net and always use the underlying platform directly instead

Windows.Web.HttpClient or HttpWebRequest

It is better to use one these clients.

  • Windows Phone 8: HttpWebRequest
  • Windows 10 and 8.1 should use Windows.Web.HttpClient

Known problems and bugs in Windows.Web.HttpClient or the old HttpWebRequest:

There are some known bugs available but for a lot of them there are work arounds you can use:

If you have any problems by using the included authentication methods (for example: PasswordCredential) you “just” need to do the authentication by your self creating and adding specific request headers.

Hereinafter is a sample showing how these header entries must be used if you need Digest authentication. The sample uses the old HttpWebRequest but you can rewrite the sample to use Windows.Web.HttpClient easily.

DigestFixer

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: