URL中加入BASE64加密的字符串引起的问题(Illegal base64 character a)

BASE64 decode报错,

msg=Illegal base64 character a

原来

java.util.Base64 这个方法不对导致,decode错误!

解决方案


之所以出现这样的问题,是由于在 BASE64 加密的过程中,引错了 jar 包,不应该使用 Sun 提供的内部包,也就是 sun.misc,后来了解到 sun.misc 包是 Sun 公司提供给内部使用的专用 API,在 java API 文档中我们看不到任何有关 BASE64 影子,不建议使用。

经过测试,我发现,除了使用 sun.misc 包的 BASE64 报错外,其他两个都可以正常运行,这两个包括:

  • com.sun.org.apache.xerces.internal.impl.dv.util.Base64;
  • org.apache.commons.codec.binary.Base64;

这两个提供的实现都可以正常运行。至于这两个的加密方法嘛,百度一下下吧。。。

你可能感兴趣的:(Java)