1. 程式人生 > >URL中加入BASE64加密的字串引起的問題(Illegal base64 character a)

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;
這兩個提供的實現都可以正常執行。至於這兩個的加密方法嘛,百度一下下吧。。。