Java 如何在spring中从RESTURL中获取包含问号(?)的参数
我需要从url获取字符串,其中为“”,但控制器不接受“” 我需要发送“你好,世界?” 但我只有“你好,世界” 我找到了点(.)的解决方案--value=“{textToTransform:.+}”Java 如何在spring中从RESTURL中获取包含问号(?)的参数,java,rest,url,Java,Rest,Url,我需要从url获取字符串,其中为“”,但控制器不接受“” 我需要发送“你好,世界?” 但我只有“你好,世界” 我找到了点(.)的解决方案--value=“{textToTransform:.+}” 问号是URL中的保留字符。它指示查询字符串的起始位置 如果您想将?作为参数值发送,并且能够在服务器端读取,则必须对其进行URL编码 当URL编码时,Hello world?变为Hello+world%3F您可以使用%3F手动对其进行编码或查看它,而不是作为参数。它变成了Hello+World%3F。
问号是URL中的保留字符。它指示查询字符串的起始位置 如果您想将
?
作为参数值发送,并且能够在服务器端读取,则必须对其进行URL编码
当URL编码时,
Hello world?
变为Hello+world%3F
您可以使用%3F
手动对其进行编码或查看它,而不是作为参数。它变成了Hello+World%3F
。
@RestController
@RequestMapping(textTransformCtrl.BASE_URI)
public class textTransformCtrl {
@Autowired
private TextTransformatorService textTransformatorService;
public static final String BASE_URI = "transform/text";
@RequestMapping(value = "{textToTransform:.+}")
public String getText(@PathVariable final String textToTransform) {
return textTransformatorService.transformText(textToTransform);
}
}