Quick Start: Use Go language functions to implement simple URL encoding and decoding functions
URL encoding is to convert special characters in the URL into a specific encoding format to ensure the correctness and security of the URL during transmission. sex. URL decoding restores the encoded URL to the original URL string. In the Go language, we can use the functions provided by the built-in net/url
package to implement URL encoding and decoding functions.
URL Encoding
The following is a simple example code that shows how to use Go language functions to encode a URL string:
package main import ( "fmt" "net/url" ) func main() { rawUrl := "https://www.example.com/search?q=编码测试&category=编程" encodedUrl := url.QueryEscape(rawUrl) fmt.Println("Encoded URL:", encodedUrl) }
In the above example, we First, an original URL string rawUrl
is defined, which contains Chinese characters. Then use the url.QueryEscape()
function to encode the string and obtain an encoded URL string encodedUrl
. Finally, print out the encoded URL string through fmt.Println()
.
Run the above code, the output result is as follows:
Encoded URL: https%3A%2F%2Fwww.example.com%2Fsearch%3Fq%3D%E7%BC%96%E7%A0%81%E6%B5%8B%E8%AF%95%26category%3D%E7%BC%96%E7%A8%8B
You can see that the Chinese characters in the original URL have been successfully encoded, and the special characters have also been converted into corresponding Encoding format.
URL Decoding
Similarly, we can also use the url.QueryUnescape()
function to decode the encoded URL string and restore it to the original URL string. The following is a simple example code:
package main import ( "fmt" "net/url" ) func main() { encodedUrl := "https%3A%2F%2Fwww.example.com%2Fsearch%3Fq%3D%E7%BC%96%E7%A0%81%E6%B5%8B%E8%AF%95%26category%3D%E7%BC%96%E7%A8%8B" decodedUrl, err := url.QueryUnescape(encodedUrl) if err != nil { fmt.Println("Error:", err) return } fmt.Println("Decoded URL:", decodedUrl) }
In the above example, we define an encoded URL string encodedUrl
and then use url.QueryUnescape()
The function decodes it and obtains a decoded URL string decodedUrl
. Note that the url.QueryUnescape()
function also returns an error value, so we need to check whether an error occurred after decoding.
Run the above code, the output result is as follows:
Decoded URL: https://www.example.com/search?q=编码测试&category=编程
You can see that the encoded URL string has been successfully decoded and restored to the original URL string.
In summary, it is very simple to use Go language functions to implement URL encoding and decoding functions. We only need to introduce the net/url
package and use url.QueryEscape()# respectively. ## and
url.QueryUnescape() functions are sufficient. In this way, we can handle the encoding and decoding needs of URL strings in our Go language program.
The above is the detailed content of Quick Start: Use Go language functions to implement simple URL encoding and decoding functions. For more information, please follow other related articles on the PHP Chinese website!