Maison > développement back-end > Golang > le corps du texte

Comment servir des dossiers statiques à l'aide de Chi Router

王林
Libérer: 2024-02-09 14:30:10
avant
996 Les gens l'ont consulté

如何使用 Chi 路由器提供静态文件夹服务

Éditeur PHP Apple vous présente comment utiliser le routeur Chi pour fournir des services de dossiers statiques. Chi est un framework Web léger en langage Go qui fournit des fonctions de routage simples et efficaces. Grâce à Chi, nous pouvons facilement créer un service de dossiers statiques et afficher les fichiers statiques directement dans le navigateur. Cet article présentera en détail comment configurer le routeur Chi et fournir des services de dossiers statiques pour rendre votre site Web plus efficace et plus pratique. Découvrons-le ensemble !

Contenu de la question

Je souhaite fournir un dossier ayant la forme suivante :

my-project/
  - public/ <- The folder that I want to serve and also all the subfolders and files
    - css/
      - styles.css

    - js/
      - script.js

  - main.go
Copier après la connexion

Je souhaite y accéder en utilisant l'URL http://localhost/api/static/css/styles.csshttp://localhost/api/static/js/script.js

J'ai donc essayé l'étape suivante :

<code>package main

import (
    "log"
    "net/http"

    "github.com/go-chi/chi/v5"
)

func main() {
    r := chi.NewRouter()

    r.Handle("/api/static/*", http.StripPrefix("/public/", http.FileServer(http.Dir("./public"))))

    if err := http.ListenAndServe(":80", r); err != nil {
        log.Fatal(err)
    }
}
</code>
Copier après la connexion

Cela ne fonctionne pas lorsque j'essaie d'accéder à http://localhost/api/static/css/styles.css ou http://localhost/api/static/js/script , cela me donnera une erreur HTTP 404 code.jshttp://localhost/api/static/css/styles.csshttp://localhost/api/static/js/script 时,它会给我一个 HTTP 404 错误代码.js

解决方法

您必须从路径中剥离 /api/static ,因此,例如,如果请求来自 /api/static/css/styles.css ,剥离它将留下 css/styles.css ,这将在 ./public 下查找,得到 ./public/css/styles.css

Solution de contournement🎜🎜Vous devez supprimer /api/static du chemin, donc par exemple, si la requête vient de /api/static/css/styles.css, le supprimer laissera css/styles.css, qui sera recherché sous ./public pour obtenir ./public/css/styles.css. 🎜

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
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!