2017-08-17 178 views
-1

嘗試將SAML解碼從使用apache commons升級到使用內置的Java 8類。使用Java時失敗。爲什麼java.util.Base64和org.apache.commons.ssl.Base64不兼容?

有沒有辦法讓Java的工作像Apache的?

任何人都可以解釋爲什麼這些不同嗎?

+1

歡迎來到Stack Overflow!尋求調試幫助的問題(「爲什麼這個代碼不工作?」)必須包含所需的行爲,特定的問題或錯誤以及在問題本身中重現問題所需的最短代碼。沒有明確問題陳述的問題對其他讀者無益。請參閱:如何創建[mcve]。使用「編輯」鏈接來改善你的*問題* - 不要通過評論添加更多信息。謝謝! – GhostCat

+0

這不是調試幫助。這是類之間的差異。示例代碼不是必需的。 –

+0

然後顯示每個輸入和輸出的示例。這將幫助我們看到你所看到的。你至少可以明確你正在談論的Apache實現。 (有幾個,他們處理空白的方式不同。) – erickson

回答

0

所不同的是在RFC規範每個使用解碼:RFC 4648 RFC VS 2045

與Java的使用2045,叫Base64.getMimeDecoder().decode(),而不是Base64.getDecoder().decode()(使用4648)。

相關問題