使用HttpClient获取响应

时间:2012-11-06 18:56:26

标签: c# asp.net dotnet-httpclient

我正在尝试使用HttpClient从第三方API(Rackspace Cloud Files)读取响应内容。这是我到目前为止所拥有的。我似乎无法获得内容。

    HttpClient client = new HttpClient();
    client.DefaultRequestHeaders.Add("X-Auth_User", username);
    client.DefaultRequestHeaders.Add("X-Auth-Key", api);
    client.GetAsync("identity.api.rackspacecloud.com".ToAbsoluteUrl()).ContinueWith(
        (requestTask) =>
        {
            HttpResponseMessage response = requestTask.Result;
            response.EnsureSuccessStatusCode();
            response.Content.ReadAsAsync<string>().ContinueWith(
                      (readTask) =>
                      {
                          var result = readTask.Result;
                      });
        });

这给了我“No'MediaTypeFormatter'可用于读取媒体类型为'text / html'的'String'类型的对象。”错误。

我需要检索Rackspace文档(示例)中所述的响应详细信息:

HTTP/1.1 204 No Content
Date: Mon, 12 Nov 2007 15:32:21 GMT
X-Storage-Url: https://storage.clouddrive.com/v1/CF_xer7_34
X-CDN-Management-Url: https://cdn.clouddrive.com/v1/CF_xer7_34
X-Auth-Token: eaaafd18-0fed-4b3a-81b4-663c99ec1cbb
Content-Length: 0
Content-Type: text/plain; charset=UTF-8

我如何得到回复?

当我使用ReadAsStringAsync时,它会提供我的页面的HTML源代码。

谢谢。

0 个答案:

没有答案