ASMX 웹 서비스에서 JSON 응답 생성
ASMX 웹 서비스로 작업 중이며 기본 XML 대신 JSON 데이터를 반환하는 데 이 서비스가 필요합니다. ResponseFormat
속성을 설정한 후에도 여전히 XML을 가져옵니다.
해결책은 표준 ASMX 직렬화 프로세스를 우회하고 JSON을 HTTP 응답에 직접 작성하는 것입니다. 이를 위해서는 WebMethod의 반환 유형을 void
.
코드를 수정하는 방법은 다음과 같습니다.
<code class="language-csharp"> [System.Web.Script.Services.ScriptService] public class WebServiceClass : System.Web.Services.WebService { [WebMethod] public void WebMethodName() { string jsonString = "{property: value}"; // Your JSON string here HttpContext.Current.Response.ContentType = "application/json"; HttpContext.Current.Response.Write(jsonString); } }</code>
이 수정된 코드는 기본 ASMX 직렬화로 생성된 XML 래퍼를 피하고 JSON 문자열을 직접 출력합니다. "{property: value}"
를 실제 JSON 데이터로 바꾸는 것을 잊지 마세요. ContentType
헤더를 설정하면 클라이언트가 응답을 JSON으로 올바르게 해석할 수 있습니다.
위 내용은 ASMX WebMethod에서 XML 대신 JSON을 출력하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!