Maison > développement back-end > Golang > Comment définir des en-têtes HTTP dans un serveur Web Go à l'aide de gorilla/mux ?

Comment définir des en-têtes HTTP dans un serveur Web Go à l'aide de gorilla/mux ?

DDD
Libérer: 2024-12-23 02:05:08
original
867 Les gens l'ont consulté

How to Set HTTP Headers in a Go Web Server using gorilla/mux?

Définition des en-têtes HTTP dans le serveur Web Go

Lors du développement d'un serveur Web à l'aide de Go, il est souvent nécessaire de définir des en-têtes HTTP en réponse à demandes des clients. Cela vous permet de contrôler le comportement du navigateur et de fournir des informations essentielles sur le serveur et ses ressources.

Pour définir les en-têtes HTTP dans un serveur Web Go à l'aide de gorilla/mux et net/http, vous pouvez utiliser la méthode Set() de la fonction Header(). Voici un exemple de la façon de définir l'en-tête Access-Control-Allow-Origin sur "*":

func saveHandler(w http.ResponseWriter, r *http.Request) {
    // allow cross domain AJAX requests
    w.Header().Set("Access-Control-Allow-Origin", "*")
}
Copier après la connexion

En ajoutant les lignes ci-dessus à votre fonction de gestionnaire, vous demandez au serveur de répondre à l'origine croisée demandes de n’importe quelle origine avec l’en-tête Access-Control-Allow-Origin défini sur « * ». Cela permet les appels AJAX inter-domaines sans être bloqués par la politique de même origine.

Pour rendre cet en-tête disponible pour toutes vos routes, vous pouvez utiliser la fonction Use() de gorilla/mux pour ajouter un middleware à votre routeur. :

func main() {
    r := mux.NewRouter()
    r.Use(mux.CORSMethodMiddleware(r))
    r.HandleFunc("/save", saveHandler)
    http.Handle("/", r)
    http.ListenAndServe(":"+port, nil)
}
Copier après la connexion

Ce middleware ajoutera automatiquement l'en-tête Access-Control-Allow-Origin à toutes les réponses, quel que soit l'itinéraire.

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