猿问

Go url 参数映射

在 native 中是否有本地 url 参数的本地方式Go

例如,如果我有一个 URL:http://localhost:8080/blob/123/test我想将此 URL 用作/blob/{id}/test.

这不是关于寻找go图书馆的问题。我从基本问题开始,go 本身是否提供了一个基本的工具来在本地执行此操作。


陪伴而非守候
浏览 470回答 3
3回答

慕侠2389804

没有内置的简单方法可以做到这一点,但是,这并不难。我就是这样做的,没有添加特定的库。它被放置在一个函数中,以便您可以getCode()在请求处理程序中调用一个简单的函数。基本上你只是把它们r.URL.Path分成几部分,然后分析这些部分。// Extract a code from a URL. Return the default code if code// is missing or code is not a valid number.func getCode(r *http.Request, defaultCode int) (int, string) {        p := strings.Split(r.URL.Path, "/")        if len(p) == 1 {                return defaultCode, p[0]        } else if len(p) > 1 {                code, err := strconv.Atoi(p[0])                if err == nil {                        return code, p[1]                } else {                        return defaultCode, p[1]                }        } else {                return defaultCode, ""        }}
随时随地看视频慕课网APP

相关分类

Go
我要回答