application/x-www-form-urlencoded
为什么我们需要 URL 编码?
根据定义,URI 有两种类型的字符,保留的和非保留的。 将保留字符视为具有特定含义的特殊字符。 例如,正斜杠字符用于分隔 URL 的不同部分。 URL 编码过程允许我们将任何字符串转换为 URI 有效字符串,将原本保留的字符编码为百分比编码的字符。
"
在 Golang 中对查询字符串进行 URL 编码
net/urlQueryEscape
func QueryEscape(s string) string
QueryEscape
让我们看一个例子
package main
import (
"fmt"
"net/url"
)
func main() {
s := "this will be esc@ped!"
fmt.Println("http://example.com/say?message="+url.QueryEscape(s))
}
输出如下
http://example.com/say?message=this+will+be+esc%40ped%21
在 Golang 中对多个值进行 URL 编码
url.Valuesurl.Values.Encode()
func (v Values) Encode() string
编码将值编码为按键排序的“URL 编码”形式(“bar=baz&foo=quux”)。
让我们看一个示例,其中包含多个要进行 URL 编码的键
package main
import (
"fmt"
"net/url"
)
func main() {
params := url.Values{}
params.Add("message", "this will be esc@ped!")
params.Add("author", "golang c@fe >.<")
fmt.Println("http://example.com/say?"+params.Encode())
}
输出如下
http://example.com/say?author=golang+c%40fe+%3E.%3C&message=this+will+be+esc%40ped%21
我希望大家喜欢这篇文章并学习了如何在 Go (Golang) 中对字符串进行 URL 编码(或百分比编码)!