Apidogではスクリプト内で組み込みおよび非組み込みのJavaScriptクラスライブラリを利用できます。Apidogの組み込みJSライブラリはrequire
で使用可能です。npmで公開されている多数の非組み込みライブラリを$$.liveRequire
関数で動的に導入できます。純粋なJSライブラリのみ対応しており、ブラウザ側動作をサポートする「browser」記載のライブラリが推奨です。C/C++などの言語拡張を含むライブラリは読み込み不可で、タイムアウトまたは例外が発生します。非組み込みライブラリはネットワークからJSライブラリをダウンロードする必要があるため、インターネット接続が必須です。実行時のライブラリダウンロードにはパフォーマンス低下が伴うため、まず組み込みJSライブラリの利用を推奨します。
組み込みライブラリ一覧#
btoa(v1.2.1): Base64エンコード crypto-js(v3.1.9-1): エンコード/デコードライブラリ(Base64、MD5、SHA、HMAC、AES等)モジュール全体のみrequire可能でサブモジュールは不可
jsrsasign(10.3.0): RSA暗号化/復号(Apidogバージョン1.4.5以降のみ対応) chai (v4.2.0): BDD/TDDアサーションライブラリ lodash (v4.17.11): JSユーティリティライブラリ moment(v2.22.2): 日付ライブラリ(ロケール除く) tv4(v1.3.0): JSONSchemaバリデーター ajv(v6.6.2): JSONSchemaバリデーター 使用例#
以下に組み込みライブラリを用いたデータの暗号化・復号、エンコード・デコードの一般的な例を示します。SHA256暗号化#
HMAC-SHA256暗号化#
Base64エンコード#
Base64デコード#
pm.response.setBody()
メソッドでデコードしたJSONデータをレスポンスボディに設定可能です。AES暗号化#
AES復号#
ECBモードとPkcs7パディングでAES暗号化された暗号文の復号スクリプト例:RSA暗号化#
RSA復号#
以下はシンプルなRSA暗号化/復号の完全な例(注: jsrsasign
バージョン10.3.0、他のバージョンと構文互換性なし)。この例はNode.js環境で実行可能で、Apidogでの暗号化/復号操作に適応できます:組み込みライブラリを使用する場合、モジュール全体のみrequire可能で、サブモジュールを個別にrequireすることはできません。
var cryptoJs = require("crypto-js");
console.log(cryptoJs.SHA256("Message"));
var SHA256 = require("crypto-js/sha256");
console.log(SHA256("Message"));