public Response getCustomerByName(
@PathParam("customerName") String customerName)
问题:
我将customerName传递为:堆栈溢出(URL编码为: stack%20overflow )。我想在我的java代码中接收解码后的字符串(堆栈溢出,没有%20)。
我尝试了什么:
这完全没问题,但我觉得这不是更通用的做法。
URLDecoder.decode(customerName, "UTF-8");
需要更多通用解决方案 我想在其余的API中进行类似的更改,因此在每个API中使用URLDecoder是一种负担。有什么常见的做法我可以遵循在应用程序级别强制执行此解码吗? (收到请求时,@ PathParam已被解码)
答案 0 :(得分:1)
应该是自动"解码"并且您不需要使用Dropzone.autoDiscover = false;
var foto_upload= new Dropzone(".dropzone",{
url: "<?php echo base_url('dashboard/uploads_image') ?>",
maxFilesize: 2,
method:"post",
acceptedFiles:"image/*",
paramName:"userfile",
dictInvalidFileType:"Type file ini tidak dizinkan",
addRemoveLinks:true,
sending: function (file, xhr, formData) {
a.token=Math.random();
formData.append('token_foto', a.token);
}
});
如PathParam javadoc的javadoc所述:
除非使用编码注释禁用此值,否则将对URL进行解码。
我刚刚在下面进行了验证,它按照javadoc(在weblogic服务器中)
运行URLDecoder.decode(customerName, "UTF-8");