go - 如何在 Golang 中处理动态 URL

标签 go

<分区>

我正在创建一个 Go 网络应用程序,我需要在其中处理像/person/(any_name) 这样的 URL。作为Golang的新手,我不知道该怎么做。请帮助我。

最佳答案

如果您查看此页面 https://golang.org/doc/articles/wiki/有一些我认为你追求的例子。

你想要一个名为 person 的处理程序,然后提取 (any_name) 并根据每个人处理它。其中一个示例显示了如何使用 title 进行操作,这是相同的原则。

func viewHandler(w http.ResponseWriter, r *http.Request) {
    title := r.URL.Path[len("/view/"):]
    p, _ := loadPage(title)
    t, _ := template.ParseFiles("view.html")
    t.Execute(w, p)
}

您得到的不是/view/,而是/person/,title 就是您的情况下的 (any_name)。

r.URL.Path[len("/view/"):] 将从 r.URL.Path 获取所有内容,但从 len("/view/") 字节到 slice 中。

关于go - 如何在 Golang 中处理动态 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45397625/

相关文章:

go - 重置时间。mgo 结构中的时间

eclipse - 如何在eclipse IDE中执行go test文件

google-app-engine - 如何使用 go http.Client(和应用程序引擎 urlfetch)仅下载大文件的开头

go - 有没有办法在 Go 中判断文件类型(可执行文件、文本等)?

go - 使 Golang TCP 服务器并发

winapi - golang,调用GetVolumeInformation winapi函数

go - 如何使用代理进行 https 请求

go - 在golang中使用gin包为特定路由表达中间件?

golang 迷失在倒影中

Go Unicode 组合字符(字素簇)和 MS Windows 控制台 cmd.exe