Maison > développement back-end > Golang > Comment lire des ajaxParams personnalisés dans l'objet Golang http.Request

Comment lire des ajaxParams personnalisés dans l'objet Golang http.Request

PHPz
Libérer: 2024-02-08 23:48:08
avant
651 Les gens l'ont consulté

如何读取Golang http.Request对象中的自定义ajaxParams

L'éditeur php Xiaoxin vous présentera comment lire les ajaxParams personnalisés dans l'objet Golang http.Request. Dans Golang, nous utilisons souvent le package http pour gérer les requêtes HTTP. Lorsque nous utilisons AJAX pour envoyer des requêtes, des paramètres personnalisés sont parfois inclus dans la requête. Comment lire ces paramètres personnalisés côté serveur ? Cet article vous donnera une réponse détaillée et fournira des exemples de code concis et efficaces. Ne manquez pas ce tutoriel pour rendre votre développement Golang plus confortable !

Contenu de la question

Nous avons les ajaxparams suivants :

var ajaxParams = {
        type: 'POST',
        url: '/golang_endpoint',
        dataType: 'json',
        customParam: 'customParam',
        success: onResponse,
        error: onError,
    };
Copier après la connexion
Est-il possible pour

golang de lire les propriétés personnalisées qui apparaissent sous forme d'objets *http.request dans les gestionnaires golang associés ?

Solution

Ces paramètres sont utilisés pour effectuer des requêtes ajax, ce ne sont pas les paramètres qui atteignent réellement le serveur. Vous devez le transmettre comme données pour une demande de publication comme celle-ci : 

var ajaxparams = {
    type: 'post',
    url: '/golang_endpoint',
    datatype: 'json',
    data: {customparam: 'customparam'},
    success: onresponse,
    error: onerror,
};
$.ajax(ajaxparams);
Copier après la connexion

Ensuite, vous traitez simplement les données selon vos besoins, comme ceci :

type MyStruct {
    customParam string `json:"customParam"`
}

func HandlePost(w http.ResponseWriter, r *http.Request) {
    dec := json.NewDecoder(r.Body)
    var ms MyStruct

    err := dec.Decode(&ms)
    if err != nil {
        panic(err)
    }

    fmt.Println(ms.customParam)
}
Copier après la connexion

Supposons que vous souhaitiez que le paramètre soit une chaîne. Quoi qu’il en soit, vous pouvez le convertir dans le type souhaité.

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!

Étiquettes associées:
source:stackoverflow.com
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