エクスポート (0) 印刷
すべて展開

カスタム API

更新日: 2014年7月

Microsoft Azure モバイル サービスを使用すると、モバイル サービスで 1 つ以上のカスタム API を定義できます。カスタム API は、1 つ以上の標準の HTTP メソッドによってアクセスされるモバイル サービスのエンドポイントです。GET、POST、PUT、PATCH、DELETE。JavaScript バックエンド モバイル サービスでは、カスタム API スクリプトをポータルで作成または編集するか、サービスの Git リポジトリを使用してアップロードします。

.NET バックエンド モバイル サービスでは、カスタム API が ApiController から派生し、ApiServices オブジェクトを返す Services プロパティを実装する、Visual Studio プロジェクトのクラスとして定義されます。Management Portal には、.NET バックエンドのカスタム API に対するサポートはありません。

JavaScript バックエンドで、各関数のエクスポートは、カスタム API でサポートされている HTTP メソッドごとに定義し、すべてを 1 つのスクリプト ファイルに含めることができます。登録したスクリプトは、指定されたメソッドを使用したカスタム API への要求を受け取ったときに呼び出されます。カスタム API を使用すると、挿入操作、更新操作、削除操作、または読み取り操作にマップされないサーバー機能や、スケジュールされたジョブとしてマップされないサーバー機能を公開できます。カスタム API を呼び出すには、サポートされているメソッドの HTTP 要求を、次の一般的な形式の URI に送信します。

https://<service_name>.azure-mobile.net/api/<api_name>

JavaScript カスタム API を登録するには、[作成] ボタンをクリックし、API の呼び出しに使用する HTTP メソッドに対する権限を選択して、[OK] をクリックします。POST メソッドの既定の "Hello World" の実装は、次のように、生成され、スクリプト エディターに表示されます。

exports.post = function(request, response) {
    // Use "request.service" to access features of your mobile service, e.g.:
    //   var tables = request.service.tables;
    //   var push = request.service.push;

    response.send(200, "Hello World");
};

カスタム API の作成と呼び出しの方法の例については、「クライアントからのカスタム API の呼び出し」 (Windows ストア C# / Windows ストア JavaScript / Windows Phone / iOS / Android) を参照してください。

JavaScript バックエンドで、カスタム API は、基本的に、HTTP メソッドに正規にマップされる 1 つ以上のパブリック関数を公開する Node.js モジュールです。これらの関数は、前の例で POST 要求を処理する exports.post のように、exports オブジェクトを使用して公開されます。エクスポートされた各カスタム API 関数は、request オブジェクトresponse オブジェクトに渡されます。これらのオブジェクトは、express.js ライブラリによって実装され、express.js ライブラリの API を公開します。

カスタム API では、要求の service オブジェクトからサーバー スクリプトのグローバル オブジェクト (pushtables、および mssql) にアクセスできます。テーブル操作と同様に、カスタム API でサポートされている各 HTTP メソッドに対して同じ権限を設定できます。認証されたクライアントについては、指定された request オブジェクトuser.userId 値に基づいてユーザー固有の承認を実行することもできます。

noteメモ
サーバー スクリプトがカスタム API の HTTP メソッドに登録されていない場合は、そのメソッドに対する要求によって 405 エラー コードが返されます。

カスタム API の詳細については、「モバイル サービスのサーバー スクリプト リファレンス」を参照してください。

表示:
© 2015 Microsoft