Go Web サーバーで静的 HTML ファイルを提供する
index.html のような静的 HTML ファイルを提供するために、Go の net/http パッケージはエレガントなソリューション。その方法は次のとおりです。
package main import ( "net/http" ) func main() { http.Handle("/", http.FileServer(http.Dir("./static"))) http.ListenAndServe(":3000", nil) }
このコードは、静的ファイルがプロジェクトのルートの「static」というディレクトリに保存されていることを前提としています。 FileServer() 関数を呼び出して HTML ファイルを含むディレクトリを渡すことにより、これらのファイルをそのまま提供するように Web サーバーに指示します。
http://localhost:3000/ にアクセスすると、インデックスが表示されます。静的ディレクトリからの html ファイルがレンダリングされます。 URL を変更することで、そのディレクトリ内の他のファイルに直接アクセスすることもできます。
別の URL からファイルを提供する
特定の URL から静的ファイルを提供したい場合は、 http://localhost:3000/static などの URL では、StripPrefix() を利用できます。 function:
package main import ( "net/http" ) func main() { http.Handle("/static/", http.StripPrefix("/static/", http.FileServer(http.Dir("./public")))) http.ListenAndServe(":3000", nil) }
このコードは、「public」ディレクトリからファイルを提供する前に、リクエスト URL から「/static/」を削除するハンドラーを設定します。その結果、パブリック ディレクトリのファイルは http://localhost:3000/static/ でアクセスできるようになります。
以上がGo Web サーバーで静的 HTML ファイルを提供するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。