Java 正确处理编码和解码的URI
我希望我的程序能够通过URI正确检索数据,URI可以包含特殊字符,并且可以由用户编码(例如,Java 正确处理编码和解码的URI,java,encoding,uri,Java,Encoding,Uri,我希望我的程序能够通过URI正确检索数据,URI可以包含特殊字符,并且可以由用户编码(例如,…abc%5E…)或纯文本(例如,…abc^…) 我尝试使用%作为标记来标记URI已编码,这将导致下一个问题: 如果普通(未编码)URI是abc%5E或abc%25我的程序会对其进行解码,并尝试从错误路径获取数据。所以在这种情况下,用户必须插入已经编码的URI。(这与我应得的功能冲突) 有没有办法解决这个问题 谢谢也许decodeURI能帮上忙: alert(decodeURI("abc%5E or ab
…abc%5E…
)或纯文本(例如,…abc^…
)
我尝试使用%
作为标记来标记URI已编码,这将导致下一个问题:
如果普通(未编码)URI是abc%5E
或abc%25
我的程序会对其进行解码,并尝试从错误路径获取数据。所以在这种情况下,用户必须插入已经编码的URI。(这与我应得的功能冲突)
有没有办法解决这个问题
谢谢也许decodeURI能帮上忙:
alert(decodeURI("abc%5E or abc^"));
如果您自己编码和解码,那么作为一种选择,您可以坚持某些标准,这绝对是不可能的(逻辑上)。作为
java.net
package中的URLEncoder
/URLEncoder
选项,我了解这些类,主要的一点是如何正确判断解码URI是否包含%25
或%5E