Heim >Backend-Entwicklung >C++ >Wie kann ich JSON anstelle von XML aus einer ASMX-Webmethode ausgeben?
Generieren von JSON-Antworten von ASMX-Webdiensten
Sie arbeiten mit einem ASMX-Webdienst und benötigen, dass dieser JSON-Daten anstelle des Standard-XML zurückgibt. Auch nach dem Festlegen der ResponseFormat
-Eigenschaft erhalten Sie immer noch XML.
Die Lösung besteht darin, den standardmäßigen ASMX-Serialisierungsprozess zu umgehen und den JSON direkt in die HTTP-Antwort zu schreiben. Dazu muss der Rückgabetyp der WebMethod in void
.
So können Sie Ihren Code ändern:
<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>
Dieser überarbeitete Code gibt die JSON-Zeichenfolge direkt aus und vermeidet so den XML-Wrapper, der durch die standardmäßige ASMX-Serialisierung generiert wird. Denken Sie daran, "{property: value}"
durch Ihre tatsächlichen JSON-Daten zu ersetzen. Durch Festlegen des ContentType
-Headers wird sichergestellt, dass der Client die Antwort korrekt als JSON interpretiert.
Das obige ist der detaillierte Inhalt vonWie kann ich JSON anstelle von XML aus einer ASMX-Webmethode ausgeben?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!