首頁 > 後端開發 > Golang > 如何使用 gorilla/mux 在 Go Web 伺服器中設定 HTTP 標頭?

如何使用 gorilla/mux 在 Go Web 伺服器中設定 HTTP 標頭?

DDD
發布: 2024-12-23 02:05:08
原創
873 人瀏覽過

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

在Go Web 伺服器中設定HTTP 標頭

使用Go 開發Web 伺服器時,經常需要設定HTTP 標頭以回應客戶要求。這允許您控制瀏覽器行為並提供有關伺服器及其資源的基本資訊。

要使用 gorilla/mux 和 net/http 在 Go Web 伺服器中設定 HTTP 標頭,您可以使用 Set() 方法的 Header() 函數。以下是如何將Access-Control-Allow-Origin 標頭設定為「*」的範例:

func saveHandler(w http.ResponseWriter, r *http.Request) {
    // allow cross domain AJAX requests
    w.Header().Set("Access-Control-Allow-Origin", "*")
}
登入後複製

透過將上述行加入處理程序函數中,指示伺服器回應跨來源來自任何來源且Access-Control-Allow-Origin 標頭設定為「*」的請求。這樣可以實現跨域 AJAX 調用,而不會被同源策略阻止。

要讓此標頭可用於所有路由,您可以使用gorilla/mux 的Use() 函數為路由器新增中間件:

func main() {
    r := mux.NewRouter()
    r.Use(mux.CORSMethodMiddleware(r))
    r.HandleFunc("/save", saveHandler)
    http.Handle("/", r)
    http.ListenAndServe(":"+port, nil)
}
登入後複製

此中間件會自動將Access- Control-Allow-Origin 標頭新增至所有回應,無論路由為何。

以上是如何使用 gorilla/mux 在 Go Web 伺服器中設定 HTTP 標頭?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板