我似乎遇到了HttpServerUtility.UrlTokenDecode(string)
的问题,因为它一直返回null,导致程序崩溃。
根据我收集的内容,此方法会将字符串转换为base64 Byte-Array。不幸的是,代码的原始开发人员不再和我们在一起,而且我办公室里的人似乎并不熟悉代码。
public string DecodeUrlData(string urlData)
{
string lsReturnVal = string.Empty;
byte[] decodedrtfBytes = HttpServerUtility.UrlTokenDecode(urlData);
lsReturnVal = System.Text.ASCIIEncoding.ASCII.GetString(decodedrtfBytes);
return lsReturnVal;
}
这是已编写的代码,urlData
具有以下值:
urlData = "pdfSignature template testing."
(还应该知道urlData
可能有“字符串”值或rtfformatted字符串)
但最终发生的事情是当执行HttpServerUtility.UrlTokenDecode(urlData)
行时,字节数组最终为空(在以下行中导致异常)。
是否有另一种方法将字符串转换为可行的base64,或者为什么它会继续产生空值?
答案 0 :(得分:4)
根据HttpServerUtility.UrlTokenDecode
documentation,input
参数应为先前通过UrlTokenEncode
编码的网址标记。
引用:
UrlTokenDecode方法转换为 URL字符串标记,用于编码二进制文件 数据作为基数64位,到它的 等效字节数组表示。 使用UrlTokenDecode方法 解码在URL上传输的令牌 并使用。编码 UrlTokenEncode。