すべてのプロダクト
Search
ドキュメントセンター

Server Load Balancer:その他の関数

最終更新日:Sep 14, 2024

このトピックでは、その他の関数の構文、機能、パラメーター、および戻り値について説明します。 このトピックでは、これらの関数の例も示します。

base64_enc | base64_dec | url_escape | url_unescape | randseed | rand | rand_hit | crc | tonnumber | base64_enc_safe | base64_dec_safe

base64_enc

項目

説明

構文

機能

Base64で文字列をエンコードします。

パラメーター

  • s: エンコードする文字列。

  • no_padding: 文字列をパディングするかどうかを指定します。 trueの値は、文字列がパディングされないことを指定します。 デフォルト値: false

戻り値

Base64-encoded文字列。

$http_data {

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

Request header: "data: aGVsbG8sIGRzbA=="
Response: base64_decdata=hello, dsl
base64_encdata=aGVsbG8sIGRzbA==

base64_dec

項目

説明

構文

base64_dec(s)

機能

Base64-encoded文字列をデコードします。

パラメーター

s: デコードする文字列。

戻り値

デコードされた生の文字列。

$http_data {

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

Request header: "data: aGVsbG8sIGRzbA=="
Response: base64_decdata=hello, dsl
base64_encdata=aGVsbG8sIGRzbA==

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('dsdata=', dsdata))
}

出力:

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

url_unescape

項目

説明

構文

url_unescape(s)

機能

URLエンコードされた文字列をデコードします。

パラメーター

s: デコードする文字列。

戻り値

デコードされた生の文字列。

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
esdata=%2Fabc%2F123%2F%20dd%2Ffile.m3u8
dsdata=/abc/123/ dd/file.m3u8

randomseed

項目

説明

構文

randomseed()

機能

ランダムなシードを生成します。

パラメーター

なし。

戻り値

なし。

randomseed()
r = rand(1,100)

rand

項目

説明

構文

機能

乱数を生成します。 有効値: n1 ≤ returned number ≤ n2。

パラメーター

  • n1: 最小の数。

  • n2: 最大の数。

戻り値

乱数。

r = rand(1,100)

rand_hit

項目

説明

構文

機能

指定された確率に基づいてtrueまたはfalseの値を取得します。

パラメーター

比率: 確率。 有効値: 0~100。

戻り値

指定された確率に基づいてtrueまたはfalseが返されます。 比率を100に設定した場合、trueが返されます。 ratioを0に設定した場合、falseが返されます。

rand_hit(80)

crc

項目

説明

構文

crc(s)

機能

巡回冗長検査 (CRC) ダイジェストを計算する。

パラメーター

s: CRCダイジェストを計算する文字列。

戻り値

sパラメーターで指定された文字列のCRC値。

crc('hello edgescript')

tonumber

項目

説明

構文

tonumber(s [, base])

機能

文字列を数値型に変換します。

パラメーター

  • s: 変換する文字列。

  • base: 文字列の変換に使用する位置表記。 有効な値: 10と16。 デフォルト値は 10 です。

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

Output: tonumber()=100

base64_enc_safe

項目

説明

構文

base64_enc_safe(str)

機能

Base64で文字列をエンコードします。 エンコードされた文字列では、プラス記号 (+) はマイナス記号 (-) に置き換えられ、スラッシュ (/) はアンダースコア (_) に置き換えられ、等号 (=) は削除されます。

パラメーター

str: エンコードする文字列。

戻り値

Base64-encoded文字列。

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-encoded文字列をデコードします。 デコードされた文字列では、マイナス記号 (-) はプラス記号 (+) に置き換えられ、アンダースコア (_) はスラッシュ (/) に置き換えられます。 文字列が4文字の倍数にパディングされるように、文字列の末尾に等号 (=) が追加されます。

パラメーター

str: デコードするBase64-encoded文字列。

戻り値

デコードされた生の文字列。

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