Forguncy 10 オンラインヘルプ
アプリの開発 / ロジックの実装 / サーバーサイド処理 / サーバーサイドコマンド / サーバーサイドコマンドを構成する要素と概念
このトピックで
    サーバーサイドコマンドを構成する要素と概念
    このトピックで

    サーバーサイドコマンドは、次の4つの要素から構成されています。このうち設定が必須となるのは「クライアントから呼び出すコマンド」と「コマンド(サーバーサイド)」の2つです。

    1. クライアントから呼び出すコマンド(「サーバーサイドコマンドの呼び出し」)

    2. パラメーター

    3. コマンド(サーバーサイド)

    4. 戻り値

    クライアントから呼び出すコマンド(「サーバーサイドコマンドの呼び出し」)

    サーバーサイドコマンドは、その実行のためにクライアント(Webブラウザー)側からリクエストを送信する必要があります。そのために「サーバーサイドコマンドの呼び出し」コマンドが用意されています。ボタン型セルやハイパーリンク型セルなどに、「サーバーサイドコマンドの呼び出し」コマンドを設定し、それらのセル型をクリックすることでサーバーサイドコマンドを呼び出して実行します。詳細については、サーバーサイドコマンドの呼び出しを参照してください。なお、Forguncy以外のアプリケーションから呼び出す場合、指定のHTTPメソッドに応じたHTTPリクエストを送信します。アクセス許可の設定が「誰でも」以外の場合、OAuthクライアントの設定が必要になります。詳細についてはセキュリティの「外部連携」部分を参照してください。リクエスト先のURLについては、サーバーサイドコマンドの全般設定を参照してください。

    なお、サーバーサイドコマンドは、クライアントから呼び出す以外に、別のサーバーサイドから呼び出して利用することが可能です。このような使用方法は、通常のコマンドにおける再利用コマンドと同様の利点があります。別のサーバーサイドコマンドから呼び出す方法については、サーバーサイドコマンドの呼び出し(サーバーサイド)を参照してください。

    パラメーター

    サーバーサイドコマンドは、サーバー上でその処理が実行されることから、通常のコマンドとは異なりページ上に表示されている値をサーバーサイドコマンド内から直接参照することができません。そのため、サーバーサイドコマンド内で必要となる値はパラメーターとしてクライアントから受け渡す必要があります。たとえば、ユーザーがページ上のテキストボックス型セルに入力した「りんご」という値をサーバーサイドコマンドを使ってテーブルに登録する場合、「りんご」という値をパラメーターとして受け渡します。

    詳細については、パラメーターを参照してください。

    コマンド(サーバーサイド)

    サーバーサイドコマンドとして設定可能なコマンドの種類や、その設定項目は通常のコマンドとは異なります。詳細はコマンド(サーバーサイド)を参照してください。

    戻り値

    サーバーサイドコマンドは戻り値をもっており、サーバーサイドコマンドが正常に完了した場合には、リターンコードとして0が値として返ります。何らかのエラーが発生した場合には、その内容を示すリターンコードとリターンメッセージが返ります。条件分岐コマンドなどを使用して意図的にリターンコードとリターンメッセージを返したい場合には、リターン(コマンドの終了)コマンドを使用します。

    Forguncyのコマンドが返すリターンコードは次の表のとおりです。なお、第三者が作成するプラグインコマンドでは任意のリターンコードを返すことが可能です。

    リターンコード

    説明

    0

    正常に完了

    401

    権限不足により失敗

    500

    例外発生により失敗

    サーバーサイドコマンドのHTTPレスポンスの本文は次のようなJSONデータとなっており、戻り値が格納されています。

    HTTPレスポンスの例
    コードのコピー
    {
      "ErrCode": 1111,
      "Message": "テスト",
      "Log": "14:36 コマンド「サーバーサイドコマンド1」の実行を開始します。トリガー方式:POST ユーザー:Administrator\r\nリターン(コマンドの終了)\r\nリターンコード:1111\r\nリターンメッセージ:テスト\r\n 「サーバーサイドコマンド1」サーバーサイドコマンド実行の終了。時間:1.0012 ミリ秒\r\n"
    }

    JSONのキー「ErrCode」はコマンド内「リターンコード」に、「Message」は「リターンメッセージ」に該当します。なお、「Log」はデバッグ時にのみ主力される項目となっており、Forguncy Serverへ発行したアプリケーション上のサーバーサイドコマンドでは出力されません。