c# null base64 httpserverutility

c# - HttpServerUtility.UrlTokenDecode solo parece devolver nulo



null base64 (1)

Parece que tengo un problema con HttpServerUtility.UrlTokenDecode(string) , ya que constantemente devuelve nulo, lo que hace que el programa falle.

Por lo que he reunido, este método convertirá una cadena a su base64 Byte-Array. Desafortunadamente, el desarrollador original del código ya no está con nosotros, y parece que no muchas personas en mi oficina están familiarizadas con el código.

public string DecodeUrlData(string urlData) { string lsReturnVal = string.Empty; byte[] decodedrtfBytes = HttpServerUtility.UrlTokenDecode(urlData); lsReturnVal = System.Text.ASCIIEncoding.ASCII.GetString(decodedrtfBytes); return lsReturnVal; }

Ese es el código que se ha escrito, y urlData tiene el siguiente valor:

urlData = "pdfSignature template testing."

(También se debe saber que urlData puede tener un valor de "cadena" o una cadena con formato rtf)

Pero lo que termina sucediendo es que cuando se HttpServerUtility.UrlTokenDecode(urlData) la línea HttpServerUtility.UrlTokenDecode(urlData) , la matriz de bytes termina siendo nula (lo que causa una excepción en la siguiente línea).

¿Hay alguna otra manera de convertir la cadena a base64 que funcionaría, o por qué sigue produciendo un valor nulo?


De acuerdo con la documentación de HttpServerUtility.UrlTokenDecode , el parámetro de input debe ser un token de Url codificado previamente a través de UrlTokenEncode .

Citar:

El método UrlTokenDecode convierte un token de cadena URL, que codifica datos binarios como 64 dígitos base, en su representación de matriz de bytes equivalente. Utilice el método UrlTokenDecode para decodificar tokens transmitidos en la URL y codificados utilizando UrlTokenEncode.