Статический каталог не обслуживается - PullRequest
1 голос
/ 10 апреля 2019

Я пытаюсь обслуживать папку в корне моего приложения с именем assets. Я хочу, чтобы все файлы и подпапки внутри были доступны через URL /details/.

fs := http.FileServer(http.Dir("assets"))
http.Handle("/details/", http.StripPrefix("/details/", fs))

Я все еще получаю 404 за все. Я неправильно использую StripPrefix?

Для ясности предположим, что assets содержит test.json. Я хочу, чтобы это было доступно с URL /details/test.json.

1 Ответ

1 голос
/ 10 апреля 2019

В приведенных выше комментариях дважды проверьте ваши пути, разрешения, контексты пользователя и т. Д.

Если вы все еще застряли, начните с этой базовой настройки:

package main

import (
        "log"
        "net/http"
)

func main() {
        fs := http.FileServer(http.Dir("/tmp/assets"))
        http.Handle("/details/", http.StripPrefix("/details/", fs))
        log.Fatal(
                http.ListenAndServe(":8080", nil),
        )   
}

И тест с завитком и т. Д.

<code>$ find /tmp/assets

/tmp/assets
/tmp/assets/test.json

$ go run ./main.go

$ curl localhost:8080/details/

<pre>
<a href="test.json">test.json</a>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...