Теперь у меня есть 3 файла и папка в том же каталоге, что и следующая. index.html
запросит .css
, .js
(ReactJS) и изображения в папке /img
.Обслуживание динамического файла HTML с помощью `html/template`, а также обслуживание файлового сервера для размещения файлов CSS, JS и изображений в том же каталоге
После довольно много поиска и попробовать, я знаю, что я могу использовать следующее, чтобы сделать файловый сервер для обслуживания запроса /
URL-адреса для файлов внутри client/index
.
http.Handle("/", http.StripPrefix("/", http.FileServer(http.Dir("client/index"))))
Это хорошо работает. Но он служит только для статических файлов, и я хочу внести некоторые изменения в html-файл перед переносом, например, для изменения значения в теге <input id='projectId' type='hidden' value={{.projectId}}/>
. Поэтому мне нужно зарегистрировать HandleFunc('/', handler)
для выполнения шаблона html, но url /
уже используется для реализации файлового сервера.
Что такое правильный способ изменить HTML динамически, а также обслуживать запросы к файловой системе для файлов (.css
, .js
и изображений в папке img
)?
сервер/pghndler/индекс/index.go
package index
func RegisterHandlers() {
http.Handle("/", http.StripPrefix("/", http.FileServer(http.Dir("client/index"))))
http.HandleFunc("/login", loginHandler)
}