我要发送的字符串包含#
因此,在服务器中只收到最多#
的字符串。我应该如何在客户端使用BASE64Encoder来编码String。请记住我有一个包含#
的字符串。以及如何在服务器中解码它?
答案 0 :(得分:2)
为此目的使用URLEncoder
和URLDecoder
类。
String urlParam = URLEncoder.encode(param);
...
String param = URLDecoder.decode(urlParam);
答案 1 :(得分:1)
看起来您在查询字符串中传递了非url编码的参数。你不需要Base64,只需要url-encode。
请参阅HTTP URL Address Encoding in Java:
URI uri = new URI(
"http",
"www.google.com",
"/ig/api",
"weather=São Paulo#123",
null);
String request = uri.toASCIIString();