使用 解析 URLr.URL.Query()
时,我得到的结果不一致,我想知道是否有其他人遇到过同样的问题和/或可行的解决方法。键有时会返回?keyName
而不是keyName
经常返回,我会对这keys.Get
两个值都做。
func(w http.ResponseWriter, r *http.Request) {
keys := r.URL.Query()
lat := keys.Get("lat")
if lat == "" {
// r.URL.Query sometimes comes back with ?lat instead of lat for some reason...
lat = keys.Get("?lat")
if lat == "" {
// error here
}
}
lng := keys.Get("lng")
if lng == "" {
lng = keys.Get("?lng")
if lng == "" {
// error here
}
}
}
测试网址:http://localhost:3000/?lng=-75.7572111845&type=property
电流输出
2019/04/08 10:59:27 map[lat:[39.5040840724] lng:[-75.7572111845]]
2019/04/08 10:59:28 map[?lat:[39.5040840724] lng:[-75.7572111845]]
2019/04/08 10:59:29 map[lat:[39.5040840724] lng:[-75.7572111845]]
2019/04/08 10:59:30 map[lat:[39.5040840724] lng:[-75.7572111845]]
2019/04/08 10:59:31 map[lat:[39.5040840724] ?lng:[-75.7572111845]]
预期的
2019/04/08 10:59:27 map[lat:[39.5040840724] lng:[-75.7572111845]]
2019/04/08 10:59:28 map[lat:[39.5040840724] lng:[-75.7572111845]]
2019/04/08 10:59:29 map[lat:[39.5040840724] lng:[-75.7572111845]]
2019/04/08 10:59:30 map[lat:[39.5040840724] lng:[-75.7572111845]]
2019/04/08 10:59:31 map[lat:[39.5040840724] lng:[-75.7572111845]]