首頁 > 後端開發 > Golang > 主體

如何使用 Chi 路由器提供靜態資料夾服務

王林
發布: 2024-02-09 14:30:10
轉載
1002 人瀏覽過

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

php小編蘋果為您介紹如何使用Chi路由器提供靜態資料夾服務。 Chi是一個輕量級的Go語言網路框架,它提供了簡潔、有效率的路由功能。透過Chi,我們可以輕鬆地建立一個靜態資料夾服務,將靜態檔案直接展示在瀏覽器中。本文將詳細介紹如何設定Chi路由器並提供靜態資料夾服務,讓您的網站更有效率且便利。讓我們來一起了解吧!

問題內容

我想提供具有以下形式的資料夾:

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
登入後複製

我想使用URL的http://localhost/api/static/css/styles.csshttp://localhost/api/static/js/script.js來訪問它

所以我嘗試做下一步:

<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>
登入後複製

這不起作用,當我嘗試訪問http://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

以上是如何使用 Chi 路由器提供靜態資料夾服務的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:stackoverflow.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
最新問題
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!