2017-08-17 173 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)。

相关问题