【发布时间】:2017-05-25 16:16:05
【问题描述】:
我在 C# 中编码了一些文本,如下所示:
var encodedCredential = Convert.ToBase64String(Encoding.Unicode.GetBytes(JsonConvert.SerializeObject("Sample text")));
编码后的字符串为:IgBTAGEAbQBwAGwAZQAgAHQAZQB4AHQAIgA=
我想在 java 脚本中解码编码的字符串。
我已经尝试了以下
decodeURIComponent(atob("IgBTAGEAbQBwAGwAZQAgAHQAZQB4AHQAIgA="))
decodeURIComponent(atob("IgBTAGEAbQBwAGwAZQAgAHQAZQB4AHQAIgA=").replace(' ',''))
结果有所不同,每个字母都有一些空格。我什至不能替换空格。
【问题讨论】:
-
明确一点:base64 编码/解码不是加密 - 不涉及密钥,因此任何人都可以“解密”这些数据。
-
这是因为你编码了一个 Unicode 字符串。尝试将其编码为 ASCII 字符串(或 UTF-8)。
标签: javascript c# encoding base64