Maison > développement back-end > Golang > Golang http.FileServer renvoie 404 introuvable

Golang http.FileServer renvoie 404 introuvable

WBOY
Libérer: 2024-02-11 08:50:07
avant
655 Les gens l'ont consulté

Golang http.FileServer 返回 404 未找到

l'éditeur php Banana vous présentera un problème courant dans Golang, c'est-à-dire qu'une erreur 404 non trouvée est renvoyée lors de l'utilisation de http.FileServer. Lors de la création d'applications Web à l'aide de Golang, nous utilisons souvent http.FileServer pour servir des fichiers statiques. Cependant, vous rencontrerez parfois un problème 404 non trouvé lors de l'accès à des fichiers statiques. Cet article vous aidera à résoudre ce problème et proposera des solutions courantes.

Le contenu de la question

contient cet extrait simple :

fs := http.FileServer(http.Dir("./web/js"))
    http.Handle("/js/", http.StripPrefix("/js/", fs))
Copier après la connexion

et allez à /js/ 实际上列出了文件,但是当我尝试打开实际文件时,它显示 404 Not Found

$ curl http://localhost:8100/js/
<pre class="brush:php;toolbar:false">
<a href="test.js">test.js</a>
$ curl http://localhost:8100/js/test.js 404 page not found
Copier après la connexion

Des suggestions ? Cela semble être une question super triviale.

Solution de contournement

Le problème ne réside pas dans l'extrait de code, mais dans le masquage des détails, comme l'utilisation de gorilla/mux , qui sert le fichier différemment, comme indiqué dans cette solution :

Solution

TLDR :

import  "github.com/gorilla/mux"

// snip

router := mux.NewRouter()
fs := http.FileServer(http.Dir("./web/js"))
router.Handle("/js/{.js}", http.StripPrefix("/js/", fs))
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:stackoverflow.com
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal