こんにちは!テリロジーのY.Tです。
今回はSQLDeveloper WebのREST APIのご紹介をしていきます。
- SQLの実行や編集:
- データベースへのデータのアップロード:
- REST APIの構築 ←今回ご紹介する内容!
- データ分析
- E-R図の自動作成
- データベースのユーザ管理など
ここでは、SQL Developer Webを利用し、REST APIを構築し、GETでアクセスしたいと思います。
APIユーザーの作成
【OCI SQL Developer Web】データのアップロードの記事で作成したAutonomous Databaseから、アクセスしていきます。OCI管理コンソールから、「Oracle Database」 > 「Autonomous Database」へ推移し、作成済みの データベースを選択します。「サービス・コンソール」を選択後、「開発」 > 「SQL Developer Web」をクリック します。特権ユーザーでアクセスし、「データベース・ユーザー」からAPIユーザを作成していきます。
「+ユーザーの作成」をクリックし、ユーザを作成していきます。
- ユーザー名、パスワード:任意の文字列を入力
- REST対応:有効 ※有効化することで、作成したアカウントでAPIを作成できます
- 承認が必要:無効
- REST別名:任意の文字列を入力 ※初期値としてユーザ名が入力されています
- URLマッピングタイプ:BASE_PATH
次に、作成したAPIユーザーにデータベースにデータをロードする許可を与えます。「SQL」に推移します。
以下のSQLを実行します。
GRANT UNLIMITED TABLESPACE TO <APIユーザー名>;
データのアップロード
特権ユーザーからサインアウトし、作成したAPIユーザでSQL Developer Webにサインインします。初めに「SQL」からデータを登録していきます。
画面下部の「データのロード」から、データを登録していきます。
今回は「【OCI SQL Developer Web】データのアップロード」で利用したMOVIES.csvのデータを利用します。
REST APIの構築
2.データのアップロードで登録したデータのREST APIを構築していきます。「REST」をクリックします。
APIのURIは以下のように作成していきます。
https://<ベースURI>/ords/<REST別名>/<モジュール名>/<テンプレート名>
- <ベースURI>:あらかじめ決まっているURI
- <REST別名>:ユーザ作成時に指定した値
- <モジュール名>、<テンプレート名>:RESTのページから作成し、設定。また、APIのURIでアクセス可能な
1.モジュールの作成
はじめに、「モジュール」>「モジュールの作成」へ推移し、APIのベースパスとなるモジュールを作成していきます。
- モジュール名、ベースパス:任意に入力
- 公開:有効 ※ここでは公開するAPIを作成するため有効化しています
- 作成後モジュールに移動:有効
2.テンプレートの作成
次に「+テンプレートの作成」をクリックし、テンプレートを作成していきます。
テンプレートで指定したヘッダの優先度、またHTTPエンティティ・タグ・タイプ(ETag)を設定することができます。優先度では数字が大きいほうが優先度が高くなります。
また、HTTPエンティティ・タグ・タイプは「セキュア・ハッシュ」、「ETag問い合わせ」(クエリを利用し定義)、 「なし」のいずれかを選択することが可能です。
ここでは優先度はデフォルトの「0」、HTTPエンティティ・タグ・タイプは「セキュア・ハッシュ」を指定します。
- URIテンプレート:任意に入力
- 優先度:0
- HTTPエンティティ・タグ・タイプ:セキュア・ハッシュ
- 作成後ハンドラに移動:有効
3.ハンドラの作成
最後にハンドラを作成し、URIで表示させる情報をSQLで入力します。
メソッドはGET、POST、PUT、DELETEから選択できますが、ここではGETを選択します。
また、クエリは先ほどアップロードしたデータのすべてを取得するSQL文にします。
- メソッド:GET
- ページ当たりのアイテム数:25
- ソース・タイプ:収集問合わせ
- SQL:SELECT * FROM MOVIES
4.GETリクエストの実行
作成したURIにアクセスすると、ハンドラに設定したSQLの結果が確認できます。
また、作成したモジュールのメニューから「非公開」を選択し、非公開設定にすると公開を停止できます。
非公開時は以下のように「404 Not Found」と表示されます。
まとめ
今回はOCI SQL Developer WebでREST APIを公開する方法についてご紹介しました。
次回はSQL Developerで作成したAPIをSQL Developer Webから確認していきたいと思います!
最後までお読みいただき、ありがとうございました。🙇
- カテゴリ:
- OCIサービス紹介