Todos os produtos
Search
Central de documentação

CDN:Funções diversas

Última atualização: Aug 27, 2026

Esta página descreve as funções utilitárias do EdgeScript: codificação e decodificação, geração de números aleatórios, checksums, conversão de tipos e geração de identificadores únicos.

Codificação e decodificação Base64

O EdgeScript oferece duas variantes de Base64: padrão (base64_enc / base64_dec) e segura para URL (base64_enc_safe / base64_dec_safe). Use a variante padrão para codificações gerais e a variante segura para URL quando a string codificada aparecer em URLs ou cabeçalhos HTTP.

base64_enc

Codifica uma string em Base64 padrão.

Sintaxe

base64_enc(s [, no_padding])

Parâmetros

Parâmetro

Descrição

s

String a codificar.

no_padding

Indica se os caracteres de preenchimento devem ser omitidos. Defina como true para remover os caracteres = finais. Padrão: false.

Valor de retorno

Retorna uma string codificada em Base64.

Exemplo

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

Cabeçalho da requisição: data: aGVsbG8sIGRzbA==

Saída:

base64_decdata=hello, dsl
base64_encdata=aGVsbG8sIGRzbA==

base64_dec

Decodifica uma string em Base64.

Sintaxe

base64_dec(s)

Parâmetros

Parâmetro

Descrição

s

String codificada em Base64 a decodificar.

Valor de retorno

Retorna a string original decodificada.

Exemplo

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

Cabeçalho da requisição: data: aGVsbG8sIGRzbA==

Saída:

base64_decdata=hello, dsl
base64_encdata=aGVsbG8sIGRzbA==

base64_enc_safe

Codifica uma string em Base64 seguro para URL. Na saída, + é substituído por -, / é substituído por _ e os caracteres de preenchimento = são removidos.

Sintaxe

base64_enc_safe(str)

Parâmetros

Parâmetro

Descrição

str

String a codificar.

Valor de retorno

Retorna uma string codificada em Base64 seguro para URL.

Exemplo

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

Cabeçalho da resposta:

X-RESPOND-OUTPUT: base64_enc_safe=aGVsbG8sIGRzbA

base64_dec_safe

Decodifica uma string em Base64 seguro para URL. Antes da decodificação, - é substituído por + e _ é substituído por /. Caracteres de preenchimento (=) são adicionados conforme necessário para tornar o comprimento da string múltiplo de quatro.

Sintaxe

base64_dec_safe(str)

Parâmetros

Parâmetro

Descrição

str

String codificada em Base64 seguro para URL a decodificar.

Valor de retorno

Retorna a string original decodificada.

Exemplo

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

Cabeçalho da resposta:

X-RESPOND-OUTPUT: base64_dec_safe=hello, dsl

Codificação e decodificação de URL

url_escape

Codifica uma string usando codificação de URL (percent-encoding).

Sintaxe

url_escape(s)

Parâmetros

Parâmetro

Descrição

s

String a codificar.

Valor de retorno

Retorna uma string com codificação de URL.

Exemplo

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))
}

Saída:

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

url_unescape

Decodifica uma string com codificação de URL.

Sintaxe

url_unescape(s)

Parâmetros

Parâmetro

Descrição

s

String com codificação de URL a decodificar.

Valor de retorno

Retorna a string original decodificada.

Exemplo

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))
}

Saída:

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

Geração de números aleatórios

randomseed

Inicializa o gerador de números aleatórios. Execute esta função antes de rand para garantir sequências aleatórias distintas entre requisições.

Sintaxe

randomseed()

Parâmetros

Nenhum.

Valor de retorno

Nenhum.

Exemplo

randomseed()
r = rand(1, 100)

rand

Retorna um número aleatório dentro de um intervalo especificado (inclusivo).

Sintaxe

rand(n1, n2)

Parâmetros

Parâmetro

Descrição

n1

Limite inferior.

n2

Limite superior.

O valor retornado satisfaz a condição n1 <= result <= n2.

Valor de retorno

Retorna um número aleatório.

Exemplo

r = rand(1, 100)

rand_hit

Retorna true ou false com base na probabilidade especificada. Utilize esta função para implementar divisão de tráfego por porcentagem ou liberação gradual de recursos.

Sintaxe

rand_hit(ratio)

Parâmetros

Parâmetro

Descrição

ratio

Probabilidade de retornar true. Valores válidos: 0–100. O valor 100 sempre retorna true; o valor 0 sempre retorna false.

Valor de retorno

Retorna true ou false.

Exemplo

rand_hit(80)

rand_bytes

Gera uma string numérica aleatória com o comprimento especificado.

Sintaxe

rand_bytes(len)

Parâmetros

Parâmetro

Descrição

len

Comprimento da string numérica aleatória a gerar.

Valor de retorno

Retorna a string numérica aleatória gerada.

Exemplo

rand_bytes(16)

Checksum

crc

Calcula o valor de Cyclic Redundancy Check (CRC) de uma string.

Sintaxe

crc(s)

Parâmetros

Parâmetro

Descrição

s

String para cálculo do valor CRC.

Valor de retorno

Retorna o valor CRC da string de entrada.

Exemplo

crc('hello edgescript')

Conversão de tipos

tonumber

Converte uma string em tipo numérico.

Sintaxe

tonumber(s [, base])

Parâmetros

Parâmetro

Descrição

s

String a converter.

base

Base da conversão numérica. Valores válidos: 10 (decimal) e 16 (hexadecimal). Padrão: 10.

Valor de retorno

Retorna um número.

Exemplo

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

Saída:

tonumber()=100

Identificador único

uuid

Retorna uma string UUID gerada aleatoriamente.

Sintaxe

uuid()

Parâmetros

Nenhum.

Valor de retorno

Retorna uma string UUID. Exemplo: 16903a86-4173-4dea-842c-926c5860fe05.

Exemplo

say(uuid())

Saída:

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