Maison > développement back-end > C++ > Comment puis-je générer des réponses JSON pures à partir d'un service Web ASMX ?

Comment puis-je générer des réponses JSON pures à partir d'un service Web ASMX ?

DDD
Libérer: 2025-01-15 09:56:43
original
713 Les gens l'ont consulté

How Can I Output Pure JSON Responses from an ASMX Web Service?

Génération de réponses JSON pures à partir des services Web ASMX

Les services Web ASMX, par défaut, renvoient des données XML. Cependant, de nombreuses applications nécessitent une sortie JSON. Bien que l'utilisation de ScriptMethod(ResponseFormat = ResponseFormat.Json) puisse sembler une solution, elle enveloppe en fait le JSON dans un conteneur XML.

Pour obtenir des réponses JSON pures, évitez d'utiliser la propriété ResponseFormat et écrivez plutôt directement la chaîne JSON dans l'objet HttpResponse. Cette approche élimine le wrapper XML et fournit des données JSON propres. Modifiez votre WebMethod pour utiliser un type de retour void et écrivez directement la chaîne JSON :

<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>
Copier après la connexion

Notez l'ajout de HttpContext.Current.Response.ContentType = "application/json";. Cette ligne est cruciale ; il définit l'en-tête de type de contenu correct, garantissant que le client interprète correctement la réponse en JSON. Cette méthode permet de créer des réponses JSON pures à partir d'ASMX sans avoir besoin de bibliothèques ou d'outils externes.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal