Menetapkan Pengepala HTTP dalam Go dengan Gorilla/Mux dan Net/HTTP
In a Go pelayan web menggunakan Gorilla/Mux dan net/http , selalunya perlu untuk menetapkan pengepala HTTP untuk pelbagai tujuan. Satu senario biasa ialah mendayakan AJAX merentas domain dengan menetapkan pengepala Access-Control-Allow-Origin untuk membenarkan permintaan daripada mana-mana domain.
Kod Go yang disediakan termasuk fungsi pengendali saveHandler yang memproses data permintaan dan fungsi utama yang menyediakan penghala dan memulakan pelayan web. Walau bagaimanapun, pengendali awal tidak menetapkan sebarang pengepala HTTP.
Untuk menetapkan pengepala respons HTTP, gunakan kaedah Set() pada sifat Header() http.ResponseWriter yang diserahkan kepada fungsi pengendali. Contohnya:
func saveHandler(w http.ResponseWriter, r *http.Request) { // allow cross domain AJAX requests w.Header().Set("Access-Control-Allow-Origin", "*") // do some stuff with the request data }
Dengan memanggil w.Header().Set() dengan nama dan nilai pengepala, anda boleh menetapkan pengepala HTTP yang dikehendaki untuk respons. Dalam kes ini, pengepala Access-Control-Allow-Origin ditetapkan kepada "*".
Ingat, sintaks w.Header().Set(headerName, headerValue) adalah penting untuk menetapkan pengepala dengan betul. Pakej net/http juga menyediakan kaedah tambahan untuk manipulasi pengepala yang lebih kompleks, membolehkan anda menetapkan atau menambah berbilang nilai pada pengepala. Rujuk dokumentasi rasmi Go untuk butiran lanjut.
Atas ialah kandungan terperinci Bagaimana untuk Menetapkan Pengepala HTTP dalam Go dengan Gorilla/Mux dan net/http?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!