api:script

Version 25.3.9411


api:script


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

パラメータ

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

アトリビュートの制御

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 で書かれた同じスクリプトで、言語はlanguage パラメータで作成されています:

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