ASMX 웹 서비스에서 순수 JSON 응답 생성
ASMX 웹 서비스는 기본적으로 XML 데이터를 반환합니다. 그러나 많은 애플리케이션에는 JSON 출력이 필요합니다. ScriptMethod(ResponseFormat = ResponseFormat.Json)
을 사용하면 해결책처럼 보일 수 있지만 실제로는 JSON을 XML 컨테이너로 래핑합니다.
순수한 JSON 응답을 얻으려면 ResponseFormat
속성을 사용하지 말고 대신 JSON 문자열을 HttpResponse
개체에 직접 작성하세요. 이 접근 방식은 XML 래퍼를 제거하고 깨끗한 JSON 데이터를 제공합니다. void
반환 유형을 사용하고 JSON 문자열을 직접 작성하도록 WebMethod를 수정하세요.
<code class="language-csharp">[System.Web.Script.Services.ScriptService] public class WebServiceClass : System.Web.Services.WebService { [WebMethod] public void WebMethodName() { HttpContext.Current.Response.ContentType = "application/json"; //Crucial for correct content type HttpContext.Current.Response.Write("{ \"property\": \"value\" }"); } }</code>
HttpContext.Current.Response.ContentType = "application/json";
추가에 유의하세요. 이 줄은 매우 중요합니다. 올바른 콘텐츠 유형 헤더를 설정하여 클라이언트가 응답을 JSON으로 올바르게 해석하도록 합니다. 이 방법을 사용하면 외부 라이브러리나 도구 없이도 ASMX에서 순수 JSON 응답을 생성할 수 있습니다.
위 내용은 ASMX 웹 서비스에서 순수 JSON 응답을 출력하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!