亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

處理url "/foobar/" 替換css <link>, 和js <script> 路徑以

處理url "/foobar/" 替換css <link>, 和js <script> 路徑以

Go
胡說叔叔 2023-03-21 15:11:23
我正在嘗試為我的路由器使用標準的 Go http 包。在我的 main.go 中它開始:func main() {    mux := http.NewServeMux()    fs := http.FileServer(http.Dir("static"))    handler := http.StripPrefix("/static/", fs)    mux.Handle("/static/", handler)    mux.HandleFunc("/my-example-url/", FooHandler)}在 FooHandler() 里面我有一些 println()func FooHandler(w http.ResponseWriter, r *http.Request) {    println("r.URL.Path->",r.URL.Path)    //more business logic}// output:r.URL.Path-> /my-example-url/static/css/normalize.cssr.URL.Path-> /my-example-url/static/libs/xss.js所以 url 的初始部分不應該存在(/my-example-url/ 部分)我認為這只會在我嘗試使用尾部斜線提供端點時發生,例如:mux.Handle("/my-example-url/", handler)我的最終目標是根據我試圖在尾部斜杠后傳遞到 url 中的 id 獲取一些資源,例如:http://localhost:3001/my-example-url/bb98610
查看完整描述

1 回答

?
至尊寶的傳說

TA貢獻1789條經驗 獲得超10個贊

在觸發靜態資源請求的 html 文件中,您很可能使用相對路徑而不是絕對路徑,這會導致瀏覽器將該相對路徑附加到位置欄中已有的路徑。

例如:

<link href="static/css/normalize.css" rel="stylesheet">

將由瀏覽器轉換為/my-example-url/static/css/normalize.css.

相反,您想使用(注意前導斜線)

<link href="/static/css/normalize.css" rel="stylesheet">


查看完整回答
反對 回復 2023-03-21
  • 1 回答
  • 0 關注
  • 117 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號