api:script

Version 22.0.8500


api:script

Version 22.0.8500


api:script キーワードは、REST メソッドに応答するスクリプトブロックを作成します。

パラメータ

  • method:HTTP メソッド(GET、POST、PUT/PATCH/MERGE、やDELETE)はスクリプトを呼び出すために使われます。複数のメソッドをカンマ区切りリストで指定します。これによりAPIScript でREST のようなサービスを作成できます。
  • language:スクリプトをプログラムするために使われたプログラミング言語。例えば、python または js。

アトリビュートの制御

None

以下はGetTransmissionDetails サービスを定義するスクリプトです。このスクリプトはGetTransmissionDetails がPOST メソッドを使ってアクセスされた場合のみ実行されます。インプットパラメータは、HTTP リクエストのボディで定義されます。

<api:script xmlns:api="http://www.arcesb.com/ns/APIScript/2">
  
  <api:restrict user="admin" role="Administrators"/>
  
  <api:info title="GetTransmissionDetails" description="アプリケーションのトランスミッションの詳細を取得します。">
    <input name="PortId"          desc="ポートのID。" required="true"/>
    <input name="MessageId"       desc="メッセージid。" required="true"/>
    <input name="Direction"       desc="トランスミッションの方向。" values="Incoming,Outgoing" required="true"/>
    <output name="LogTimeCreated" desc="ログファルが作成された時刻。"/>
    <output name="LogType"        desc="ログファイルの種類。" />
    <output name="LogFile"        desc="ログファイルの名前。" />
    <output name="LogPath"        desc="ログファイルのパス。" />
  </api:info>

  <api:script method="POST">
    <api:push op="portGetTransmissionDetails" />
  </api:script>
</api:script>

次の例は、元々APIScript で書かれたスクリプトを他の言語(この例ではPython)に変換する言語パラメータの使い方を説明します。こちらが、*.rst ファイルをリストする短いスクリプトです。

<api:set attr="mask" value="*.rst"/>
<api:call op="fileListDir">
    <api:push/>
</api:call>

こちらが、Python で書かれた同じスクリプトで、言語は言語パラメータで作成されています:

<api:script language="python">
  input = {"mask":"*.rst"}
  rsb.call("fileListDir",input)
</api:script>