gpt4 book ai didi

java - Spring请求参数中的特殊符号

转载 作者:太空宇宙 更新时间:2023-11-04 06:47:24 28 4
gpt4 key购买 nike

我有

@RequestMapping(value ="/getTaxiByPhone",method = RequestMethod.GET)
public @ResponseBody
String getTaxiByPhone(@RequestParam ("phone") String phone){
int count=0;
for (int i=0; i<taxiList.size();i++){
if ((taxiList.get(i).getPhone()).equals(phone)){
count++;
}
}
return "found "+count;
}
@RequestMapping(value ="/getTaxiPhone",method = RequestMethod.GET)
public @ResponseBody
String getAllTaxi(@RequestParam ("id") int id){
return taxiList.get(id).getPhone();
}

@RequestMapping(value ="/getAllTaxi",method = RequestMethod.GET)
public @ResponseBody
List<Taxi> getAllTaxi(){
return taxiList;
}

例如 getTaxi?id=2 返回 {"taxi_city_id":[55000001,67000001],"taxi_id":1113,"taxi_name":"zxcv","taxi_phon‌​e":"+73812999997"} ,但如果你尝试 getTaxiByPhone 呢? phone=+73812999997 您将找不到任何对象,因为如果您尝试返回带有计数的电话参数(return "found "+count+"for phone"+phone;),您将看到found 0 for phone 73812999997。这意味着 spring 解析 url 时符号“+”丢失了。

最佳答案

我认为这可能是特殊字符的问题,因为您在请求中传递了带有“+”的电话号码。 URL get 请求中的 + 号用于表示您应该转义的空格,可能使用

%2B

source

关于java - Spring请求参数中的特殊符号,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23792928/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com