从API获取JSON响应

时间:2015-06-17 11:29:36

标签: c# json asp.net-web-api dotnet-httpclient

我正在使用HttpClient从ASP.NET Web API控制器使用外部API。我没有使用身份验证,只是一个令牌,所以我有:

using (var httpClient = new HttpClient()) {

  httpClient.DefaultRequestHeaders.Accept.Clear();

  httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

  HttpResponseMessage response = await httpClient.GetAsync(endpoint);

}

我总是以XML格式获得响应,但我发送标题为" application / json"。

我遗漏了一些问题,这是外部API的问题吗?

我还可以尝试使用JSON获取响应吗?

2 个答案:

答案 0 :(得分:2)

由API开发人员决定是否尊重媒体类型(application / json)。当客户端请求JSON时(如果他们感觉像是拖钓),开发人员可以显式返回XML,但在这种情况下,它可能只是为您提供默认格式,因为他们不会检查标头值。

检查文档或直接与他们联系以确认他们以JSON格式返回数据以及如何格式化请求以获取JSON。

答案 1 :(得分:-1)

您应该设置Accept:application / json以及Content-Type:application / json。