用于在go模板中显示的Unicode Unescape URL
当URL包含unicode字符时,web浏览器会以真正的unicode格式显示URL,而不是长字符串%12%33等 在Golang中,当我们使用内置的go用于在go模板中显示的Unicode Unescape URL,go,url,unicode,Go,Url,Unicode,当URL包含unicode字符时,web浏览器会以真正的unicode格式显示URL,而不是长字符串%12%33等 在Golang中,当我们使用内置的gotemplate.HTML输出一个变量时,该变量将被转义以确保HTML的安全。但我想更进一步,取消对用%编码的字符的替换。在围棋中正确的方法是什么 为了清楚起见,这里是一个屏幕截图,我们只是不希望URL在我们的支持/票证系统中显得丑陋: 根据,有一个EscapedPath()函数,只在路径上工作。但如果是一种在整个URL(包括域名和查询参数)
template.HTML
输出一个变量时,该变量将被转义以确保HTML的安全。但我想更进一步,取消对用%编码的字符的替换。在围棋中正确的方法是什么
为了清楚起见,这里是一个屏幕截图,我们只是不希望URL在我们的支持/票证系统中显得丑陋:
根据,有一个
EscapedPath()
函数,只在路径上工作。但如果是一种在整个URL(包括域名和查询参数)上应用Unicode转换的方法,那将是理想的。这个已经存在了吗?我不知道你为什么说它需要整个URL,这两个似乎都有效
罚款:
package main
import "net/url"
const (
s = "https://biblicaltext.com/dictionary/%e1%bd%95%ce%b1%ce%bb%ce%bf%cf%82?b=%cf%85"
t = "https://biblicaltext.com/dictionary/ὕαλος?b=υ"
)
func main() {
{ // example 1
u, e := url.PathUnescape(s)
if e != nil {
panic(e)
}
println(u == t)
}
{ // example 2
u, e := url.QueryUnescape(s)
if e != nil {
panic(e)
}
println(u == t)
}
}