Home > Article > Backend Development > How do I extract URL parameters in Go without using a library?
URL Parameter Mapping in Go
In Go, while there isn't a built-in mechanism for direct mapping of URL parameters, it's possible to implement it manually. Here's how:
Manual Approach:
To manually extract data from a URL, you can split the URL path into parts and analyze them individually. Here's an example function that accomplishes this:
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, "" } }
Example Usage:
This function can be used within a request handler:
func handler(w http.ResponseWriter, r *http.Request) { code, param := getCode(r, 0) // ... do something with the extracted code and param ... }
Note: This approach involves manual parsing and analysis of the URL, which can be more work than using a pre-built library. However, it provides a basic understanding of how to extract parameters in Go natively.
The above is the detailed content of How do I extract URL parameters in Go without using a library?. For more information, please follow other related articles on the PHP Chinese website!