有没有办法转义url字符串参数中的所有特殊字符?
我需要用户能够传递一个文件路径作为一个获取url的参数(该文件将不会被上传,只有本地文件路径是出于某些安全原因使用)。现在,他们很难将所有反斜杠更改为“%5”。我想知道是否有办法强制对url的一部分进行编码。举个例子,简单到用双引号括起来,这是行不通的有没有办法转义url字符串参数中的所有特殊字符?,url,get,escaping,Url,Get,Escaping,我需要用户能够传递一个文件路径作为一个获取url的参数(该文件将不会被上传,只有本地文件路径是出于某些安全原因使用)。现在,他们很难将所有反斜杠更改为“%5”。我想知道是否有办法强制对url的一部分进行编码。举个例子,简单到用双引号括起来,这是行不通的 http://example.com/“c:\user\somone\somefile.txt”/dosomething我最终在服务器级别使用rest路由的模式匹配。大概是这样的: /example.com/*path/dosomething 因
http://example.com/“c:\user\somone\somefile.txt”/dosomething
我最终在服务器级别使用rest路由的模式匹配。大概是这样的:
/example.com/*path/dosomething
因此,即使使用斜线/反斜线,它也会匹配任何路径。最后,我对url进行了解码,以消除浏览器传递的转义字符(如空格)
java.net.urldecker.decode(路径,“UTF-8”)
您的用户是直接编辑URL,还是在表单中输入文件路径?他们直接输入,没有UI。