Rumah >pembangunan bahagian belakang >Golang >Bagaimana untuk menyediakan folder statik menggunakan Chi Router

Bagaimana untuk menyediakan folder statik menggunakan Chi Router

王林
王林ke hadapan
2024-02-09 14:30:101092semak imbas

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

editor php Apple memperkenalkan anda cara menggunakan penghala Chi untuk menyediakan perkhidmatan folder statik. Chi ialah rangka kerja web bahasa Go yang ringan yang menyediakan fungsi penghalaan yang mudah dan cekap. Melalui Chi, kami boleh membina perkhidmatan folder statik dengan mudah dan memaparkan fail statik terus dalam penyemak imbas. Artikel ini akan memperkenalkan secara terperinci cara mengkonfigurasi penghala Chi dan menyediakan perkhidmatan folder statik untuk menjadikan tapak web anda lebih cekap dan mudah. Mari kita ketahui bersama!

Kandungan soalan

Saya ingin menyediakan folder dengan borang berikut:

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

Saya mahu mengaksesnya menggunakan URL http://localhost/api/static/css/styles.csshttp://localhost/api/static/js/script.js

Jadi saya cuba langkah seterusnya:

<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>

Ini tidak berfungsi apabila saya cuba mengakses http://localhost/api/static/css/styles.css atau http://localhost/api/static/js/script , ia akan memberi saya kod ralat HTTP 404.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

Penyelesaian🎜🎜Anda perlu menanggalkan /api/static daripada laluan, jadi sebagai contoh, jika permintaan datang daripada /api/static/css/styles.css, menanggalkannya akan meninggalkan css/styles.css, yang akan dicari di bawah ./public untuk mendapatkan ./public/css/styles.css. 🎜

Atas ialah kandungan terperinci Bagaimana untuk menyediakan folder statik menggunakan Chi Router. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Artikel ini dikembalikan pada:stackoverflow.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam