背景 -
我需要根据用户输入的表单来构建一个 URL/查询,该表单将用于进行 API 调用。
问题 -
构建 URL 时,参数未正确转义。例如,查询“bad santa”以空格而不是“+”结束。
电流输出 -
例如https://api.example.org/3/search/movie?query=bad santa&api_key=#######
预期输出 -
例如https://api.example.org/3/search/movie?query=bad+santa&api_key=#######
代码示例 -
根网址 -
var SearchUrl = "https://www.example.org/3/search/movie?query="
从用户输入中获取参数 -
var MovieSearch []string = r.Form["GetSearchKey"]
API 密钥 -
var apiKey = "&api_key=######"
我正在使用ArrayToString()来解析表单输入数据
func ArrayToString(array []string) string{
str := strings.Join(array, "+")
return str
}
然后构建 URL -
var SearchUrl = "https://api.example.org/3/search/movie?query="
var MovieSearch []string = r.Form["GetSearchKey"]
var apiKey = "&api_key=########"
UrlBuild := []string {SearchUrl, ArrayToString(MovieSearch), apiKey}
OUTPUT_STRING := ArrayToString(UrlBuild)
问题 -
如何使用正确转义的用户输入 GET 参数构建 URL?
www说
慕少森
潇潇雨雨
相关分类