客户端使用的Content-Type为application/x-www-form-urlencoded
时,字符串中出现了空格,base64解码时出错了,因为原来的字符有+号,
Spring Boot 对于Content-Type为application/x-www-form-urlencoded的HTTP请求,默认情况下会自动进行URL解码,所以导致+变成空格了
public static void main(String[] args) throws Exception {
String decode = URLDecoder.decode("+", StandardCharsets.UTF_8.toString());
System.out.println(decode);// 输出空格
}
让客户端进行url编码或者服务器自己处理,将空格替换为+号都可以的