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

Server Load Balancer:AScript構文

最終更新日:Sep 14, 2024

このトピックでは、AScript構文について説明します。 AScriptは、Application Load Balancer (ALB) でサポートされるプログラム可能なスクリプトの一種です。 AScriptを使用して転送ルールをカスタマイズできます。

次の表に、AScript構文の詳細を示します。

重要

AScriptで二重引用符 (") を使用しないでください。

構文

説明

注釈

すべての注釈は番号記号 (#) で始まる必要があります。 例:# this is annotation

ID

  • 識別子は大文字と小文字を区別します。 識別子には、英数字、およびアンダースコア (_) を使用できます。 先頭を数字とすることはできません。

  • 組み込み変数、カスタム変数、組み込み関数、およびカスタム関数のすべての名前は、識別子規則に準拠している必要があります。

データ型

  • String

    リテラル定数: 一重引用符 (') のペアを使用して、リテラル定数 (例: 'hello, AScript') を引用します。

  • Numeric

    リテラル定数: 10進数 (10、-99、1.1など) 。

  • Boolean

    リテラル定数: trueまたはfalse。

  • 辞書

    リテラル定数:

    • []: 空の文字列。

    • ['key1', 'key2', 100]:

      • 1 -> 'key1'

      • 2 -> 'key2'

      • 3 -> 100

    • ['key1' = 'value1', 'key2' = 1000]

      • 'key1' -> 'value1'

      • 'key2' -> 1000

変数

  • 定義

    変数は、変更可能な値に関連付けられたシンボリック名です。

  • 使用方法

    • 組み込み変数とカスタム変数の両方は、名前を使用して参照されます。

      • 組み込み変数hostを参照します。

      • カスタム変数を参照します: seckey

    • 変数が組み込み変数であることを指定するには、変数名の前にドル記号 ($) を追加します。

      組み込み変数 $hostを参照します。

    • カスタム変数と組み込み変数は同じ名前を使用できません。

      組み込み変数の詳細については、「組み込み変数」をご参照ください。

演算子

  • =: 代入演算子。

    • 例: seckey = 'ASDLFJ234dxvf34sDF'

    • 例: seckeys = ['key1', 'key2']

  • -: マイナス演算子。

    例: inum = -10

  • 組み込み関数は、さまざまな種類のデータを処理するために使用されます。 追加の演算子は提供されません。 組み込み関数の詳細については、「AScript関数」をご参照ください。

条項

  • 条件句

    if condition {   
       ...
    }
    
    if condition1 {   
       if condition2 {
            ...
       }
    }
    
    if condition {
       ...
    } else {
       ...
    }
  • 条項の説明

    • condition句には、次の要素が含まれます。

      • リテラル定数

      • 変数

      • 関数呼び出し

    • 本文

      • 本体は空にすることができます。

      • 複数のステートメントが許可されます。 各行にステートメントを1つだけ入力します。

    • ステートメントのネストは許可されています。

    • コーディングスタイル

      オープニングブレース ({) は、同じライン上のif条件に従わなければなりません。

関数

  • 構文

    def Function name(Parameter list) {
        ...
    }
  • 説明

    • パラメータリスト

      • パラメータリストは空にすることができます。

      • 複数のパラメーターが許可されています。 パラメーターはコンマ (,) で区切ります。

    • 本文

      • 本体は空にすることができます。

      • 複数のステートメントが許可されます。 各行にステートメントを1つだけ入力します。

      • 戻り値はreturn句をサポートします。

    • コーディングスタイル

      オープニングブレース ({) は、同じ行のdef関数名 (パラメータリスト) に従わなければなりません。

  • 関数呼び出し

    組み込み関数とカスタム関数を呼び出すには、関数名 (パラメーターリスト) を使用する必要があります。