在 C# 中编码并在 Javascript 中解码
Encoding in C# and Decoding in Javascript
我已经用 C# 编码了一些文本,如下所示:
var encodedCredential = Convert.ToBase64String(Encoding.Unicode.GetBytes(JsonConvert.SerializeObject("Sample text")));
编码后的字符串是:IgBTAGEAbQBwAGwAZQAgAHQAZQB4AHQAIgA=
我想解码 java 脚本中的编码字符串。
我试过下面的
decodeURIComponent(atob("IgBTAGEAbQBwAGwAZQAgAHQAZQB4AHQAIgA="))
decodeURIComponent(atob("IgBTAGEAbQBwAGwAZQAgAHQAZQB4AHQAIgA=").replace(' ',''))
结果不一样,每个字母都有一些空格。我什至无法替换空格。
您需要在 C# 中使用 UTF-8 编码。通过这个命令导出base64
Convert.ToBase64String(Encoding.UTF8.GetBytes("Sample text"))
@King_Fisher,您不应该获得额外的空格,替换方法也将替换单个匹配项。
这是我对您的代码所做的(参见随附的屏幕截图)
我已经用 C# 编码了一些文本,如下所示:
var encodedCredential = Convert.ToBase64String(Encoding.Unicode.GetBytes(JsonConvert.SerializeObject("Sample text")));
编码后的字符串是:IgBTAGEAbQBwAGwAZQAgAHQAZQB4AHQAIgA=
我想解码 java 脚本中的编码字符串。
我试过下面的
decodeURIComponent(atob("IgBTAGEAbQBwAGwAZQAgAHQAZQB4AHQAIgA="))
decodeURIComponent(atob("IgBTAGEAbQBwAGwAZQAgAHQAZQB4AHQAIgA=").replace(' ',''))
结果不一样,每个字母都有一些空格。我什至无法替换空格。
您需要在 C# 中使用 UTF-8 编码。通过这个命令导出base64
Convert.ToBase64String(Encoding.UTF8.GetBytes("Sample text"))
@King_Fisher,您不应该获得额外的空格,替换方法也将替换单个匹配项。
这是我对您的代码所做的(参见随附的屏幕截图)