Golang правильный путь к файлу для обслуживания CSS-файлов - PullRequest
0 голосов
/ 24 января 2019

Я читал и пытался отправить CSS-файлы на мою HTML-страницу, но ничего не получалось.Я читал это https://forum.golangbridge.org/t/serving-static-css-files/2051/10, чтобы лучше понять.Моя структура проекта ниже

func WebRoutes(r *mux.Router) {
    r.HandleFunc("/", Index)

   // Trying to serve file here and it's not working
    r.Handle("/web/content/desktop/", http.StripPrefix("/web/content/desktop/", http.FileServer(http.Dir("desktop"))))

   // Below is the correct path since it finds the file
    _, err := os.Stat(filepath.Join(".", "/web/content/desktop/", "page.css"))
     if err != nil {
        println(err.Error())
     }

}

Я ссылаюсь на файл со своей html-страницы следующим образом:

 <link rel="stylesheet" type="text/css" href="/Web/Content/desktop/page.css">

Любые предложения будут хороши, так как я не могу получить свой CSS дляработа.

enter image description here

1 Ответ

0 голосов
/ 24 января 2019

Вы отправляете свои статические файлы с:

http.FileServer(http.Dir("desktop"))

Но, исходя из скриншота, путь на диске не "desktop", а скорее "Web/Content/desktop".

Имейте в видус учетом того, что вы уже используете StripPrefix, нет причин использовать полный путь, если вы не хотите.Вы можете сделать:

r.Handle("/css/", http.StripPrefix("/css/", http.FileServer(http.Dir("web/content/desktop"))))

Что изменит URL на:

 <link rel="stylesheet" type="text/css" href="/css/page.css">
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...