JavaScript (javascript)
JavaScript ポリシーは、特定の JavaScript プログラムを実行するために使用します。
制約事項: JavaScript ポリシーは、Micro Gateway にのみ使用できます。
概要
このポリシーを以下の API フローに付加できます。
- REST
- SOAP
JavaScript ポリシーを使用して、JavaScript のコード・スニペットを実行することができます。ただし、ポリシーには以下の制限があります。
- require() パラメーターを使用することはできません。
- node.js のグローバル・オブジェクトを使用することはできません。
- JavaScript コード内で strict モード ("use strict") を使用することはできません。そのため、ブロックスコープ宣言を使用することもできません。
プロパティー
以下の表に、このポリシーのプロパティーをリストします。表には、プロパティーが必須かどうか、入力用の有効な値とデフォルト値、および値のデータ型が示されています。
プロパティー・ラベル | 必須 | 説明 | データ型 |
---|---|---|---|
タイトル | はい | ポリシーのタイトル。 デフォルト値は、javascript です。 |
ストリング |
説明 | いいえ | ポリシーの説明。 | ストリング |
ソース | はい | 実行する JavaScript のソース・コード。 | ストリング |
例
以下の JavaScript コード・スニペットは、コンテキスト・オブジェクトのプロパティーに直接アクセス (またはプロパティーを直接編集) する方法を示しています。if (request.verb === 'POST') {
//perform some business logic when the request is POST
}
以下の例は、エラー情報が含まれているエラー・オブジェクトをスローしてからフローを変更する方法を示しています。
if (request.body.order === undefined) {
throw { name : 'IncorrectOrder', message: 'the payload should contain valid order' };
}
以下の例は、上の例で示したエラー・オブジェクトを catch アセンブリーで取得する方法を示しています。
catch:
- errors:
- 'IncorrectOrder'
execute:
- set-variable:
actions:
- set: 'message.body'
value: '{ "error" : "found an incorrect order" }'
エラー
ポリシーの実行中に以下のエラーがスローされることがあります。- JavaScriptError - ポリシーの実行中に発生するすべてのエラーをキャプチャーする一般的なエラー。
- カスタム・エラー。