本ページでは、スクリプトモードでの API 生成の実行手順を説明します。
パーソナライズされたクエリに対するハイエンドユーザーの要件を満たすため、データサービスでは SQL をカスタマイズするためのスクリプトパターンも提供しています。これにより、API のSQL クエリを自分自身で作成することが可能になります。複数テーブルの関連付け、複雑なクエリ条件、および集約関数に対応しています。
API 基本情報の設定
- に移動します。
- [Script Mode] をクリックし、API の基本事項を入力します。
設定では、 API グループ化の設定に注意してください。 API グループには、特定のシナリオに使用される各種 API 集が含まれています。 これは API Gateway での最小管理単位です。 Alibaba Cloud API マーケットでは、各 API グループは特定の API に対応しています。注 API グループ化の設定例は次のとおりです。
たとえば、天気を照会するのに API プロダクトの設定を行いたい場合、都市名検索による天気検索 API、観光地天気検索 API、郵便番号検索による天気 API の 3 種類の API プロダクトを設定し、"天気の照会" と名付けた API グループを作成し、このグループに上記の 3 つの API を配置します。 その API がマーケットに公開されると、天気の照会プロダクトとして表示されます。
もちろん、ユーザーが生成した API がユーザー自身のアプリ内で使用される場合、分類するのにグループ化を行うことができます。
現在、ビルド API は HTTP プロトコル、GET リクエストモード、および JSON リターンのみをサポートしています。
- API の基本情報を入力したら、[Next] をクリックし、API パラメーター設定ページに移動します。
API パラメーターの設定
- データソースとテーブルを選択します。
に移動します。データテーブルリスト内の適切なテーブル名をクリックし、このテーブルのフィールド情報を表示します。
注- データセット内でデータソースを事前に設定する必要があります。
- データソースを選択する必要があります。 データソース間のテーブル結合クエリには対応していません。
- API の SQL クエリを書きます。
右側のコードボックスに SQL コードを入力することができます。 システムは、フィールドのリスト中のフィールドをチェックするワンクリックの SQL 機能に対応しています。[Generate SQL] をクリックすると、
SELECT xxx FROM xxx
の SQL 文が自動的に生成され、右カーソルに挿入されます。注- ワンクリックの SQL 追加は、フィールド数が比較的多い場合に特に便利です。これにより、SQL 作成の効率が大幅に向上します。
- SELECT クエリのフィールドは、API のリターンパラメーターです。where 条件のパラメーターは、API のリクエストパラメーターです。リクエストパラメーターは "$" で識別されます。
- 最後に、パラメーター情報を編集して完了です。
API クエリの SQL を作成した後、右上の [parameters]をクリックし、パラメーター情報の編集ページに切り替えます。編集ページでは、タイプ、サンプル値、既定値、およびパラメーターの説明を編集します。タイプとパラメーターの説明の編集は必須です。注 API の呼び出し者が API をより総合的に理解できるようにするため、可能な限り、API パラメーター情報を入力します。
- [Response pagination] を有効にしない場合、既定では、API は最大 500 レコードを出力します。
- 返される結果が 500 を超える可能性がある場合、[Response pagination] 機能をオンにします。
- 共通のリクエストパラメーター
- pageNum: 現在のページ番号です。
- Pagesize: ページサイズです。 つまり、1 ページごとのレコード数です。
- 共通のレスポンスパラメーター
- pageNum: 現在のページ番号です。
- Pagesize: ページサイズです。 つまり、1 ページごとのレコード数です。
- totalNum: レコードの合計数です。
- 対応している SQL 文は 1 つだけであり、複数の SQL 文には対応していません。
- 対応しているのは、SELECT クラスだけです。 INSERT、UPDATE、DELETE などの他のクラスは対応していません。
- SELECT クラスを対象としたクエリフィールドは、API のリターンパラメーターです。where 条件内の $ {Param} の変数 "Param" は、API のリクエストパラメーターです。
SELECT \*
はサポートされていません。クエリの列は明示的に指定する必要があります。- 単一のテーブルクエリ、テーブル結合クエリ、および単一のデータソース内のネストされたクエリがサポートされています。
- SELECT クエリ列の列名に、テーブル名のプレフィクス (たとえば、T. name など) がある場合、このエイリアスをリターンパラメーター名 (たとえば、T. name を名前とする) と見なす必要があります。
- 集計関数 (min / max / sum / countなど) を使用する場合は、エイリアスをリターンパラメーター名として使用する必要があります (total \ _ num を sum (Num) とする)。
- SQL では、リクエストパラメーターが置き換えられるとき、$ {Param} は一様で、文字列 } に $ {Param} を含んでいます。 $ {Param} にエスケープ文字 \ があるとき、通常の文字列として処理されるリクエストパラメーター処理を行いません。
- たとえば、'$ {ID}'、 'ABC $ {xyz} 123' のように、 $ {Param} を引用符で囲むことはサポートされていません。 'abc ', '$ {xyz}', '123' の文字列の結合については、必要であれば実装することができます。
API パラメーターの設定が完了したら、[Next] をクリックし、API のテストセクションに移動します。
API のテスト
パラメーターを設定し、[Start Test] をクリックして、API リクエストをオンラインで送信します。 API リクエストの詳細と応答結果が右側に表示されます。 テストが失敗した場合は、エラーメッセージを注意深く読み、適切な調整を行って API を再テストします。
- 標準の応答例は、API 呼び出し者に重要な参照値を提供します。 可能であれば例を指定します。
- API 呼び出し遅延は、現在の API リクエストの遅延です。これは、API のパフォーマンスを評価する際に使用されます。 レイテンシが高すぎる場合は、データベースの最適化を検討してください。
API のテストが完了したら、[Finish] をクリックします。 これで、データ API は正常に作成されました。