字节数组(字符串)到字符串javascript

时间:2017-11-17 13:35:50

标签: javascript .net asp.net-core

我有一个将bytearray作为属性的模型,

public byte[] bytearraytest{ get; set; }

当我通过javascript GET请求获得此模型时,它是一个字符串。

tgwBAQ==

我现在如何解码?

2 个答案:

答案 0 :(得分:0)

javascript中的字符串是Base64字符串。 您必须在javascript中执行Base64解码才能访问de bytes。 试试这个:https://www.w3schools.com/jsref/met_win_atob.asp

答案 1 :(得分:0)

字符串tgwBAQ==是Base64编码的(最后通过告诉==可以很容易识别)。要从中获取字节数组,您可以使用:

var bytes = Convert.FromBase64String(value);

如果您直接将其绑定到byte[],则最有可能通过拆分字符串来创建char[],即:

[ 't', 'g', 'w', 'B', 'A', 'Q', '=', '=' ]

这对你来说显然毫无用处,所以首先,你需要接受这个值作为字符串,所以你可以把它作为一个字符串来操作。

有一次,你有一个真正的 byte[]字符串表示,回到IP地址字符串,取决于之前发生的Base64编码,它首先编码它。例如,如果提供的字符串是通过执行以下操作创建的:

var base64 = Convert.ToBase64String(Encoding.UTF8.GetBytes(ipAddress));

然后,你只需要反转:

var ipAddress = Encoding.UTF8.GetString(Convert.FromBase64String(base64));

但是,如果涉及加密,则需要首先使用加密的相同加密算法和解密“密钥”(实际共享密钥,私钥等)对其进行解密。

长短,这里没有足够的信息可以帮助你完成拼图的最后一部分,所以你需要更新你的问题,提供更多关于你正在做什么的信息,或者只是采取这个指导并运行它靠你自己。

相关问题