gpt4 book ai didi

javascript - golang 模板中的 src 属性

转载 作者:数据小太阳 更新时间:2023-10-29 03:35:56 24 4
gpt4 key购买 nike

在 golang 服务器上执行模板时,我遇到一个问题,html 文件中的 src 属性搜索导入的 javascript 文件不在根位置(服务器文件夹),而是在处理的 url 下方。因此,请求 src='/dir/file.js' 的当前位置如 http://localhost:8080/handled/ 将对 http 发出 GET 请求://localhost:8080/handled/dir/file.js

package main

import ("net/http"; "html/template")

var templates = template.Must(template.ParseFiles("././dir/file.html"))

type Page struct {
Title string
Body []byte
}

func testHandler(w http.ResponseWriter, r *http.Request) {
page := Page{"handled", nil}

err := templates.ExecuteTemplate(w, "file.html", p)
if err != nil {
http.Error(w, err.Error(), http.StatusInternalServerError)
}
}

func main() {
http.HandleFunc("/handled/", testHandler)
http.ListenAndServe(":8080", nil)
}

因此,模板 file.html 包含以下行:

<!-- file.html
javascript placed right inside template file is working,
but I didnt managed to get to work src insertation -->
<script src="file.js"></script>

...file.js 与 file.html 共享同一目录。我尝试了不同的文件位置和各种路径组合。看来我做错了。

最佳答案

如果您的浏览器正在请求/handled/dir/file.js,那么您的 src 必须缺少初始正斜杠。这不是 Go 特定的问题。

我看到你说你请求的文件有 src="/dir/file.js",但是在你的例子中你显示 src="file.js",所以我不确定你到底有什么。但是,您的问题仍然表明忘记了第一个斜杠,例如 src="dir/file.js"

关于javascript - golang 模板中的 src 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24377759/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com