Quick Start: Use Go language functions to implement simple URL encoding and decoding functions

WBOY
Release: 2023-07-30 19:48:20
Original
1842 people have browsed it

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)
}
Copy after login

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
Copy after login

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)
}
Copy after login

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=编程
Copy after login

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!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template