Todos los productos
Search
Centro de documentos

CDN:Funciones diversas

Última actualización: Sep 04, 2026

Esta página describe las funciones de utilidad disponibles en EdgeScript: codificación y decodificación, generación de números aleatorios, sumas de verificación, conversión de tipos y generación de identificadores únicos.

Codificación y decodificación Base64

EdgeScript ofrece dos variantes de Base64: Base64 estándar (base64_enc / base64_dec) y Base64 segura para URL (base64_enc_safe / base64_dec_safe). Utilice la variante estándar para codificaciones generales; emplee la variante segura para URL cuando la cadena codificada aparezca en URL o encabezados HTTP.

base64_enc

Codifica una cadena mediante la codificación Base64 estándar.

Sintaxis

base64_enc(s [, no_padding])

Parámetros

Parameter

Description

s

La cadena que se va a codificar.

no_padding

Especifica si se omiten los caracteres de relleno. Establezca este valor en true para eliminar los caracteres = finales. Valor predeterminado: false.

Valor de retorno

Devuelve una cadena codificada en Base64.

Ejemplo

if $http_data {
  decdata = base64_dec($http_data)
  say(concat('base64_decdata=', decdata))
  say(concat('base64_encdata=', base64_enc('hello, dsl')))
}

Encabezado de solicitud: data: aGVsbG8sIGRzbA==

Salida:

base64_decdata=hello, dsl
base64_encdata=aGVsbG8sIGRzbA==

base64_dec

Decodifica una cadena codificada en Base64.

Sintaxis

base64_dec(s)

Parámetros

Parameter

Description

s

La cadena codificada en Base64 que se va a decodificar.

Valor de retorno

Devuelve la cadena sin procesar decodificada.

Ejemplo

if $http_data {
  decdata = base64_dec($http_data)
  say(concat('base64_decdata=', decdata))
  say(concat('base64_encdata=', base64_enc('hello, dsl')))
}

Encabezado de solicitud: data: aGVsbG8sIGRzbA==

Salida:

base64_decdata=hello, dsl
base64_encdata=aGVsbG8sIGRzbA==

base64_enc_safe

Codifica una cadena mediante la codificación Base64 segura para URL. En la salida, + se reemplaza por -, / se reemplaza por _ y se eliminan los caracteres de relleno =.

Sintaxis

base64_enc_safe(str)

Parámetros

Parameter

Description

str

La cadena que se va a codificar.

Valor de retorno

Devuelve una cadena codificada en Base64 segura para URL.

Ejemplo

add_rsp_header('X-RESPOND-OUTPUT', concat('base64_enc_safe=', base64_enc_safe('hello, dsl')), true)

Encabezado de respuesta:

X-RESPOND-OUTPUT: base64_enc_safe=aGVsbG8sIGRzbA

base64_dec_safe

Decodifica una cadena codificada en Base64 segura para URL. Antes de la decodificación, - se reemplaza por + y _ se reemplaza por /. Los caracteres de relleno (=) se agregan según sea necesario para que la longitud de la cadena sea múltiplo de cuatro.

Sintaxis

base64_dec_safe(str)

Parámetros

Parameter

Description

str

La cadena codificada en Base64 segura para URL que se va a decodificar.

Valor de retorno

Devuelve la cadena sin procesar decodificada.

Ejemplo

add_rsp_header('X-RESPOND-OUTPUT', concat('base64_dec_safe=', base64_dec_safe(base64_enc_safe('hello, dsl'))), true)

Encabezado de respuesta:

X-RESPOND-OUTPUT: base64_dec_safe=hello, dsl

Codificación y decodificación de URL

url_escape

Codifica una cadena mediante la codificación de URL (codificación porcentual).

Sintaxis

url_escape(s)

Parámetros

Parameter

Description

s

La cadena que se va a codificar.

Valor de retorno

Devuelve una cadena codificada para URL.

Ejemplo

raw = '/abc/123/ dd/file.m3u8'
esdata = url_escape(raw)
dsdata = url_unescape(esdata)
if eq(raw, dsdata) {
  say(concat('raw=', raw))
  say(concat('dsdata=', dsdata))
}

Salida:

raw=/abc/123/ dd/file.m3u8
esdata=%2Fabc%2F123%2F%20dd%2Ffile.m3u8
dsdata=/abc/123/ dd/file.m3u8

url_unescape

Decodifica una cadena codificada para URL.

Sintaxis

url_unescape(s)

Parámetros

Parameter

Description

s

La cadena codificada para URL que se va a decodificar.

Valor de retorno

Devuelve la cadena sin procesar decodificada.

Ejemplo

raw = '/abc/123/ dd/file.m3u8'
esdata = url_escape(raw)
dsdata = url_unescape(esdata)
if eq(raw, dsdata) {
  say(concat('raw=', raw))
  say(concat('dsdata=', dsdata))
}

Salida:

raw=/abc/123/ dd/file.m3u8
esdata=%2Fabc%2F123%2F%20dd%2Ffile.m3u8
dsdata=/abc/123/ dd/file.m3u8

Generación de números aleatorios

randomseed

Inicializa el generador de números aleatorios. Ejecute esta función antes de rand para asegurar secuencias aleatorias distintas entre solicitudes.

Sintaxis

randomseed()

Parámetros

Ninguna.

Valor de retorno

Ninguna.

Ejemplo

randomseed()
r = rand(1, 100)

rand

Devuelve un número aleatorio dentro de un rango especificado (inclusive).

Sintaxis

rand(n1, n2)

Parámetros

Parameter

Description

n1

El límite inferior.

n2

El límite superior.

El valor devuelto cumple con n1 <= result <= n2.

Valor de retorno

Devuelve un número aleatorio.

Ejemplo

r = rand(1, 100)

rand_hit

Devuelve true o false según la probabilidad especificada. Utilice esta función para implementar divisiones de tráfico basadas en porcentajes o lanzamientos graduales de funciones.

Sintaxis

rand_hit(ratio)

Parámetros

Parameter

Description

ratio

La probabilidad de devolver true. Valores válidos: 0–100. Un valor de 100 siempre devuelve true; un valor de 0 siempre devuelve false.

Valor de retorno

Devuelve true o false.

Ejemplo

rand_hit(80)

rand_bytes

Genera una cadena numérica aleatoria con la longitud especificada.

Sintaxis

rand_bytes(len)

Parámetros

Parameter

Description

len

La longitud de la cadena numérica aleatoria que se va a generar.

Valor de retorno

Devuelve la cadena numérica aleatoria generada.

Ejemplo

rand_bytes(16)

Suma de verificación

crc

Calcula un valor de verificación de redundancia cíclica (CRC) para una cadena.

Sintaxis

crc(s)

Parámetros

Parameter

Description

s

La cadena para la cual se calculará el valor CRC.

Valor de retorno

Devuelve el valor CRC de la cadena de entrada.

Ejemplo

crc('hello edgescript')

Conversión de tipos

tonumber

Convierte una cadena a un tipo numérico.

Sintaxis

tonumber(s [, base])

Parámetros

Parameter

Description

s

La cadena que se va a convertir.

base

La base para la conversión numérica. Valores válidos: 10 (decimal) y 16 (hexadecimal). Valor predeterminado: 10.

Valor de retorno

Devuelve un número.

Ejemplo

n = tonumber('100')
say(concat('tonumber()=', n))

Salida:

tonumber()=100

Identificador único

uuid

Devuelve una cadena UUID generada aleatoriamente.

Sintaxis

uuid()

Parámetros

Ninguna.

Valor de retorno

Devuelve una cadena UUID. Ejemplo: 16903a86-4173-4dea-842c-926c5860fe05.

Ejemplo

say(uuid())

Salida:

16903a86-4173-4dea-842c-926c5860fe05