vsql_rest は、データベースプロセスの内部からテーブルを HTTP 経由で提供します。クライアントは接続ではなく URL で行を読み取り、クエリパラメーターで絞り込み、/rpc/ の下でストアド関数を呼び出します。書くべきアプリケーションも、実行すべき第 2 のプロセスもありません。
インストール
インストールスクリプト、Docker イメージ、またはリリース tarball で VillageSQL をインストールした場合、vsql_rest.veb はすでにサーバーの lib/veb/ ディレクトリにあります。1 つのステートメントでサーバーにインストールします。
追加される機能
SQL 関数は追加しません。SET GLOBAL で設定し、応答するすべてのリクエストは HTTP 経由で届きます。
例
リスナーは起動時にデータベースのレイアウトをキャッシュし、schema_ttl 秒間保持するため、先にテーブルを作成します。
SET PERSIST で書き込んだ設定は再起動後も残りますが、UNINSTALL EXTENSION はそれを削除します。アンインストールと再インストールの後は、すべての設定がデフォルトに戻り、再起動しても古い値は戻りません。すべての文字列設定はサーバーを通して読み戻され、サーバーは最大 1022 バイトを返します。これより長い
schema、allowed_tables、allowed_routines、table_methods、jwt_secret、または jwt_public_key は、すべてのリクエストを 500 で失敗させます。これより長い ssl_cert または ssl_key は、リスナーの起動を妨げます。関連項目
- テーブルを REST API として提供する — フィルター、テーブルごとのメソッド、および最初に変更すべきデフォルト
- 拡張機能の管理 — 拡張機能の設定の読み書き方法
- プレビュー機能 — プレビューフラグが有効にするものと、それが約束するもの
- 利用可能な拡張機能 — 完全なカタログ
- villagesql/vsql-rest — ソース、完全なルート構文、および既知の制限事項