我使用HttpResponseMessage类作为AJAX调用的响应,该调用从服务返回JSON数据。从服务返回AJAX调用后暂停执行时,我看到此类包含一个Content属性,该属性的类型为System.Net.Http.StreamContent。
如果在浏览器中进行检查,我会看到成功进行了网络调用,并以JSON数据作为响应。我只是想知道为什么我无法在Visual Studio中看到返回的JSON文本?我搜索了整个System.Net.Http.StreamContent对象,但没有看到任何数据。
public async Task<HttpResponseMessage> Send(HttpRequestMessage request) { var response = await this.HttpClient.SendAsync(request); return response; }
响应的文本表示形式隐藏在该类的Content属性中HttpResponseMessage。具体来说,您将获得如下响应:
Content
HttpResponseMessage
response.Content.ReadAsStringAsync();
与所有现代 Async 方法一样,ReadAsStringAsync返回Task。要直接获得结果,请使用Result任务的属性:
ReadAsStringAsync
Task
Result
response.Content.ReadAsStringAsync().Result;
请注意这Result是阻塞。您也可以await ReadAsStringAsync()。
await
ReadAsStringAsync()