Header in einem Go-HTTP-Server festlegen
Bei der Entwicklung von Web-APIs ist es häufig erforderlich, HTTP-Header für Antwortobjekte festzulegen, um das Verhalten zu steuern des Browsers. Wenn Sie in Go gorilla/mux und net/http verwenden, um einen Webserver zu erstellen, ist das Festlegen von Antwortheadern ein unkomplizierter Prozess.
Betrachten Sie dieses Beispiel, das darauf abzielt, domänenübergreifende AJAX-Anfragen zu ermöglichen, indem die Option „Access-“ festgelegt wird. „Control-Allow-Origin“-Header zu „*“:
package main import ( "net/http" "github.com/gorilla/mux" ) func saveHandler(w http.ResponseWriter, r *http.Request) { // allow cross domain AJAX requests w.Header().Set("Access-Control-Allow-Origin", "*") } func main() { r := mux.NewRouter() r.HandleFunc("/save", saveHandler) http.Handle("/", r) http.ListenAndServe(":"+port, nil) }
Der Schlüssel zum Festlegen von Antwortheadern ist die Header()-Methode auf dem ResponseWriter object:
In diesem Fall der Code verwendet w.Header().Set("Access-Control-Allow-Origin", "*"), um den gewünschten Header und Wert hinzuzufügen. Das Ergebnis ist eine HTTP-Antwort, bei der der Header „Access-Control-Allow-Origin“ auf „*“ gesetzt ist.
Mit dieser einfachen Methode können Sie die HTTP-Header steuern, die mit den Antworten Ihres Servers gesendet werden, und so Funktionen wie z als Cross-Origin Resource Sharing (CORS).
Das obige ist der detaillierte Inhalt vonWie lege ich HTTP-Antwortheader in einem Go-Webserver mit Gorilla/Mux fest?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!