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 呼び出しが可能になります。
このヘッダーをすべてのルートで利用できるようにするには、ゴリラ/マルチプレクサの 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 中国語 Web サイトの他の関連記事を参照してください。