sourcecode

HttpResponseMessage 콘텐츠를 텍스트로 읽는 방법

copyscript 2023. 3. 15. 19:52
반응형

HttpResponseMessage 콘텐츠를 텍스트로 읽는 방법

서비스에서 JSON 데이터를 반환하는 AJAX 호출의 응답으로 HttpResponseMessage 클래스를 사용하고 있습니다.AJAX 콜이 서비스에서 돌아온 후 실행을 일시 중지하면 이 클래스에 System 유형의 Content 속성이 포함되어 있음을 알 수 있습니다.Net.Http.스트림 콘텐츠

브라우저에서 검사하면 네트워크 콜이 정상적으로 발신되고 JSON 데이터가 응답으로 표시됩니다.Visual Studio에서 반송된 JSON 텍스트를 볼 수 없는 이유는 무엇입니까?이 시스템을 모두 검색했습니다.Net.Http.StreamContent 객체에 데이터가 표시되지 않습니다.

public async Task<HttpResponseMessage> Send(HttpRequestMessage request) {
    var response = await this.HttpClient.SendAsync(request);
    return response;
}

응답의 텍스트 표현은 의 속성에 숨겨져 있습니다.HttpResponseMessageclass. 구체적으로는 다음과 같은 반응을 얻을 수 있습니다.

response.Content.ReadAsStringAsync();

모든 최신 비동기 방식처럼ReadAsStringAsynca를 반환하다Task결과를 직접 얻으려면Result작업 속성:

response.Content.ReadAsStringAsync().Result;

주의:Result차단하고 있습니다.할 수도 있습니다.await ReadAsStringAsync().

사용할 수 있습니다.ReadAsStringAsync에서Content.

var response = await client.SendAsync(request);
var content = await response.Content.ReadAsStringAsync();

주의: 보통 다음 명령어를 사용합니다.await- 없음.Result.

ReadAsStringAsync() 메서드를 사용할 수 있습니다.

var result = await response.Content.ReadAsStringAsync();

작업을 반환하는 ReadAsStringAsync()를 사용하고 있기 때문에 wait를 사용해야 합니다.

언급URL : https://stackoverflow.com/questions/29975001/how-to-read-httpresponsemessage-content-as-text

반응형