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

Server Load Balancer:その他の関数

最終更新日:Aug 21, 2026

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

base64_enc | base64_dec | url_escape | url_unescape | randomseed | rand | rand_hit | crc | tonumber | base64_enc_safe | base64_dec_safe

base64_enc

項目

説明

構文

base64_enc(s, [no_padding])。

説明

Base64 エンコーディング。

パラメーター

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

  • no_padding (任意):パディングを使用するかどうかを指定します。値が true の場合、パディングは無効になります。デフォルト値は false です。

戻り値

Base64 エンコードされた文字列。

例

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

リクエストヘッダー:"data: aGVsbG8sIGRzbA=="

レスポンス:

base64_decdata=hello, dsl
base64_encdata=aGVsbG8sIGRzbA==

base64_dec

項目

説明

構文

base64_dec(s)。

説明

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

パラメーター

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

戻り値

デコードされた文字列。

例

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

リクエストヘッダー:"data: aGVsbG8sIGRzbA=="

レスポンス:

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

出力:

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

項目

説明

構文

rand(n1, n2)。

説明

乱数を生成します。数値は n1 と n2 の間 (両端を含む) になります。

パラメーター

  • n1:乱数の下限。

  • n2:乱数の上限。

戻り値

生成された乱数。

例

r = rand(1, 100)

rand_hit

項目

説明

構文

rand_hit(ratio)。

説明

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

パラメーター

ratio:true を返す確率。値の範囲は 0~100 です。

戻り値

ratio で指定された確率で true を返します。たとえば、ratio が 100 の場合、関数は true を返します。ratio が 0 の場合、関数は false を返します。

例

rand_hit(80)

crc

項目

説明

構文

crc(s)。

説明

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

パラメーター

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

戻り値

文字列 s の CRC ダイジェスト。

例

crc('hello ascript')

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

説明

文字列を URL セーフな Base64 でエンコードします。出力では、+ は - に、/ は _ に置き換えられ、末尾の = パディングは削除されます。

パラメーター

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

戻り値

URL セーフな Base64 エンコードされた文字列。

例

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

説明

URL セーフな Base64 エンコードされた文字列をデコードします。デコードする前に、- は + に、_ は / に置き換えられ、文字列の末尾は 4 文字の倍数になるように = でパディングされます。

パラメーター

str:URL セーフな 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