title: Reading HttpResponseMessage.Content throws Newtonsoft.Json.JsonReaderException when reading webapi 2 token
body: <p>Hi I have writen a piece of code that should login into a WebAPI 2 site from a c# desktop application everything seams to work but I get an Newtonsoft.Json.JsonReaderException with the message as follows </p>
  
  <blockquote>
    <p>Error reading string. Unexpected token: StartObject. Path '', line 1, position 1.</p>
  </blockquote>
  
  <p>My code is as follows.</p>
  
  <pre><code>static internal async Task&lt;string&gt; GetBearerToken(string siteUrl, string Username, string Password)
  {
    HttpClient client = new HttpClient();
    client.BaseAddress = new Uri(siteUrl);
    client.DefaultRequestHeaders.Accept.Clear();
  
    HttpContent content = new StringContent("grant_type=password&amp;username=" + Username + "&amp;password=" + Password, Encoding.UTF8, "application/x-www-form-urlencoded");
  
    Task&lt;HttpResponseMessage&gt; responseTask = client.PostAsync("Token", content);
    HttpResponseMessage response = await responseTask;
  
    if (response.IsSuccessStatusCode)
    {
       Task&lt;string&gt; message = response.Content.ReadAsAsync&lt;string&gt;();
  
       return await message;
    }
    else
    {
       return null;
    }
  }
  </code></pre>
  
  <p>The raw reponse message as reported by fiddler</p>
  
  <pre><code>HTTP/1.1 200 OK
  Cache-Control: no-cache
  Pragma: no-cache
  Content-Length: 593
  Content-Type: application/json;charset=UTF-8
  Expires: -1
  Server: Microsoft-IIS/8.0
  Set-Cookie: .AspNet.Cookies=vo5b0v_43BLYlfz-rYTZ-TSGi9Rg5jSd9bvKn9693e-Kx3mMI1JVX1Sk-696f_fnPEFPRwFrNWvdMfDWUTWBElfQF3UfcUAxEE5aU5zRgI40sYKapXXnC2ucIiNKCqVsceve0cxNQYVAIr_YhMNjFLRqBX7H3BTPVKGist2AeUkWw6S4VNijx5iQhvWrAvF4xlJSznCiykNqR-QHD_ZLM5-H3GZoghrkvMpr27eXY4mLIqg4lwV2Qah0gQlXnjuWbHHZqLj5HcID1S7_OfPldBE3YqBOR2JxHLITg3yPw3lbXNkHc1UDdG9HExq0faJptz0SBqd8tIeZ7buoJTZ4LHV0TcYSEs4HZ3-Bd84XX7XeWPa5qnTaAJqXaW2FAigD38a9ASr15r5wnzWv9xQxlg; path=/; HttpOnly
  X-SourceFiles: =?UTF-8?B?RDpcMDYgUHJvamVjdEphZGVcMDIgU2FuZGJveFwwNCBDbGVhbnVwIEFQSSBBY2NvdW50XENsZWFudXBBUElBY2NvdW50XFRva2Vu?=
  X-Powered-By: ASP.NET
  Date: Sun, 02 Mar 2014 15:22:57 GMT
  
  {"access_token":"hM_60CprAm6DqCe7qgte1vsnih2d4j1Uy_FDlgoPkEgS_4u0__4lk5KNd0XysTktOfwMw4ffH3uaRmNaFObVnEY3yWS70hio03azUbCrFKk0VNgj31Y0_zLrd-J0ScZ4vzLdtw7KAXtNfcYySKk1EFtJRB4yYcqvobwORC3eu1VHyYInqy7kBgIhAZYE_NZ3zQrrGerZjy__zCuDdRtXO-klkFtg3dONq7cMP_TBi6xLmBjhXlhzUTKGzOrofijlkyMNHF1rx0CgWjhqEx2rJU8Hakq4Bac1pCqoLaYm91DRSrYO--ff4GWlP5wLeqZAhHIA7t17e2pyZXrUT7V1ExBeCnGkWbWoR8Y-QN8ocT7Q3xjydFd4uWSQD5B-Z1bC-nLpUrtkOGZiukl6J3aCJOqeidY6MEM4TMaJZlIp-Oc","token_type":"bearer","expires_in":1209599,"userName":"Alice",".issued":"Sun, 02 Mar 2014 15:22:57 GMT",".expires":"Sun, 16 Mar 2014 15:22:57 GMT"}
  </code></pre>
  
  <p>I suspect the json parser expects a different message format then it is getting. I don't want the change the webapi site so I probably have to change the client implementation. I don't what I have to change or where i have to look.</p>