全部產品
Search
文件中心

CDN:Misc相關

更新時間:Sep 15, 2024

本文為您介紹Misc相關函數的文法、說明、參數、傳回值和樣本。

base64_enc

函數詳細資料,請參見下表:

專案

描述

文法

base64_enc(s [, no_padding])

說明

base64編碼。

參數

  • s:待編碼的字串。

  • no_padding:true表示無填充,預設false

傳回值

base64編碼後的字串。

樣本指令碼

if $http_data {
 encdata = base64_enc($http_data)
 say(concat('base64_encdata=', encdata))
}

要求標頭樣本

header: "data: hello world"

樣本返回結果

base64_encdata=aGVsbG8gd29ybGQ=

base64_dec

函數詳細資料,請參見下表:

專案

描述

文法

base64_dec(s)

說明

base64解碼。

參數

s:待解碼的字串。

傳回值

base64解碼後的字串。

樣本指令碼

if $http_data {
 decdata = base64_dec($http_data)
 say(concat('base64_decdata=', decdata))
}

要求標頭樣本

header: "data: aGVsbG8gd29ybGQ="

樣本返回結果

base64_decdata=hello world

url_escape

函數詳細資料,請參見下表:

專案

描述

文法

url_escape(s)

說明

URL編碼。

參數

s:待編碼的字串。

傳回值

URL編碼後的字串。

樣本

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

輸出:

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

url_unescape

函數詳細資料,請參見下表:

專案

描述

文法

url_unescape(s)

說明

URL解碼。

參數

s:待解碼的字串。

傳回值

URL解碼後的字串。

樣本

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

輸出:

raw=/abc/123/ dd/file.m3u8
dsdata=/abc/123/ dd/file.m3u8

rand

函數詳細資料,請參見下表:

專案

描述

文法

rand(n1, n2)

說明

產生隨機數,隨機數範圍:n1 <= 傳回值 <= n2。

參數

  • n1:隨機數下限。

  • n2:隨機數上限。

傳回值

返回產生的隨機數。

樣本

r = rand(1,100)
say(concat('r=', r))

rand_hit

函數詳細資料,請參見下表:

專案

描述

文法

rand_hit(ratio)

說明

按指定機率返回真假。

參數

ratio:為真機率,有效值範圍為[0-100]。

傳回值

按ratio機率返回true。例如:當ratio為100時,返回true,當ratio為0時,返回false

樣本

ratio = rand_hit(80)
say(concat('ratio=', ratio))

crc

函數詳細資料,請參見下表:

專案

描述

文法

crc(s)

說明

計算crc摘要。

參數

s:待計算摘要的字串。

傳回值

返回s的crc摘要。

樣本

crc('hello edgescript')

tonumber

函數詳細資料,請參見下表:

專案

描述

文法

tonumber(s [, base])

說明

類型轉換,將字串類型轉換為數字類型。

參數

  • s:待轉換的字串。

  • base:可指定待轉換目標的進位,可用值:10和16,預設10進位。

樣本

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

輸出:

tonumber()=100

base64_enc_safe

函數詳細資料,請參見下表:

專案

描述

文法

base64_enc_safe(str)

說明

對輸入的字串進行Base64安全編碼。安全編碼後輸出時,需要將“+”替換成“-”、“/”替換成“_”,同時去掉編碼後的“=”。

參數

str:待加密的字串。

傳回值

返回字串類型

樣本

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

輸出回應標頭:

X-RESPOND-OUTPUT:base64_enc_safe=aGVsbG8sIGRzbA

base64_dec_safe

函數詳細資料,請參見下表:

專案

描述

文法

base64_dec_safe(str)

說明

對輸入的字串進行Base64安全解碼。安全解碼後輸出時,需要將“-”替換成“+”、“_”替換成“/”,末尾用“=”按照4的餘數補齊。

參數

str:Base64加密後的內容。

傳回值

返回字串類型。

樣本

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

輸出回應標頭:

X-RESPOND-OUTPUT:base64_dec_safe=hello, dsl

randomseed

函數詳細資料,請參見下表:

專案

描述

文法

randomseed()

說明

指定產生隨機數種子。

參數

無。

傳回值

無。

樣本

randomseed()
r = rand(1,100)
say(concat('r=', r))

rand_bytes

函數詳細資料,請參見下表:

專案

描述

文法

rand_bytes(len)

說明

產生隨機數字串。

參數

len:指定產生的隨機數字串的長度。

傳回值

返回產生的隨機數字串。

樣本

rand_bytes(16)

uuid

函數詳細資料,請參見下表:

專案

描述

文法

uuid()

說明

返回uuid格式的字串。

參數

無。

傳回值

返回uuid,樣本:16903a86-4173-4dea-842c-926c5860fe05。

樣本

uuid = uuid()
say(concat('uuid=', uuid))

輸出:

uuid=54853c52-4c57-47dc-9b73-fb95d30b3d75