Go の「Web アプリケーションの作成」チュートリアルでは、ユーザーは CSS および JS ファイルの提供で問題が発生することがよくあります。このガイドでは、この問題を解決し、Go アプリケーションがこれらの重要なアセットを効果的に配信できるようにするための段階的な手順を説明します。
静的ファイルを提供するには、次のものが必要です。次のようなファイル構造:
go-app/ ├── assets │ ├── css │ │ └── style.css │ └── js │ │ └── script.js ├── main.go ├── index.html
アセットの URL パスを定義する場合、いくつかのパスがあります。オプション:
1. 「/」から提供:
http.Handle("/", http.FileServer(http.Dir("css/")))
これは、ルート URL (/) で CSS ディレクトリを提供します。
2.プレフィックスの使用:
http.Handle("/static/", http.FileServer(http.Dir("static")))
これにより、すべての静的ファイル パスに「/static」というプレフィックスが付けられます。したがって、CSS ファイルは /static/css/style.css.
3 でアクセスできるようになります。プレフィックスの削除:
http.Handle("/static/", http.StripPrefix("/static/", http.FileServer(http.Dir("static"))))
これにより、ファイルを提供する前にプレフィックスが削除されます。そのため、CSS ファイルは /css/style.css でアクセスできるようになります。
HTML ファイルでは、適切な URL パスを使用してアセットを参照します:
<link rel="stylesheet" href="/css/style.css"> <script src="/js/script.js"></script>
これらの設定を適切に行うと、更新された main.go ファイルは次のようになります。 this:
func main() { http.HandleFunc("/view/", makeHandler(viewHandler)) http.HandleFunc("/edit/", makeHandler(editHandler)) http.HandleFunc("/save/", makeHandler(saveHandler)) http.HandleFunc("/", makeHandler(indexHandler)) http.Handle("/static/", http.StripPrefix("/static/", http.FileServer(http.Dir("static")))) http.ListenAndServe(":8080", nil) }
これらの推奨事項を実装することで、Go アプリケーションが CSS および JS ファイルを正常に提供し、完全で機能的なユーザー エクスペリエンスを提供できるようになります。
以上がGo Web アプリケーションで静的アセット (CSS および JS) を効率的に提供するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。