【OCI SQL Developer Web】REST APIの構築

 2021.06.08  株式会社テリロジー 技術統括部

こんにちは!テリロジーのY.Tです。
今回はSQLDeveloper WebのREST APIのご紹介をしていきます。

ここでは、SQL Developer Webを利用し、REST APIを構築し、GETでアクセスしたいと思います。

APIユーザーの作成

【OCI SQL Developer Web】データのアップロードの記事で作成したAutonomous Databaseから、アクセスしていきます。OCI管理コンソールから、「Oracle Database」 > 「Autonomous Database」へ推移し、作成済みの データベースを選択します。「サービス・コンソール」を選択後、「開発」 > 「SQL Developer Web」をクリック します。特権ユーザーでアクセスし、「データベース・ユーザー」からAPIユーザを作成していきます。

APIユーザーの作成 画像01

「+ユーザーの作成」をクリックし、ユーザを作成していきます。

APIユーザーの作成 画像02

  • ユーザー名、パスワード:任意の文字列を入力
  • REST対応:有効 ※有効化することで、作成したアカウントでAPIを作成できます
  • 承認が必要:無効
  • REST別名:任意の文字列を入力 ※初期値としてユーザ名が入力されています
  • URLマッピングタイプ:BASE_PATH

APIユーザーの作成 画像03

次に、作成したAPIユーザーにデータベースにデータをロードする許可を与えます。「SQL」に推移します。

APIユーザーの作成 画像04

以下のSQLを実行します。

GRANT UNLIMITED TABLESPACE TO <APIユーザー名>;

APIユーザーの作成 画像05

データのアップロード

特権ユーザーからサインアウトし、作成したAPIユーザでSQL Developer Webにサインインします。初めに「SQL」からデータを登録していきます。

データのアップロード 画像01

画面下部の「データのロード」から、データを登録していきます。
今回は「【OCI SQL Developer Web】データのアップロード」で利用したMOVIES.csvのデータを利用します。

データのアップロード 画像02

REST APIの構築

2.データのアップロードで登録したデータのREST APIを構築していきます。「REST」をクリックします。

REST APIの構築

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の結果が確認できます。

GETリクエストの実行 画像01

GETリクエストの実行 画像02

また、作成したモジュールのメニューから「非公開」を選択し、非公開設定にすると公開を停止できます。

GETリクエストの実行 画像03

非公開時は以下のように「404 Not Found」と表示されます。

GETリクエストの実行 画像04

まとめ

今回はOCI SQL Developer WebでREST APIを公開する方法についてご紹介しました。
次回はSQL Developerで作成したAPIをSQL Developer Webから確認していきたいと思います!
最後までお読みいただき、ありがとうございました。🙇


RECENT POST「OCIサービス紹介」の最新記事


OCIサービス紹介

テリロジーが提供しているOCIの4つのサービス

OCIサービス紹介

Oracle FunctionsのスクリプトをAPIGW経由で確認 Part1

OCIサービス紹介

Oracle FunctionsのスクリプトをAPIGW経由で確認 Part2

OCIサービス紹介

OCIのDNSサービス

【OCI SQL Developer Web】REST APIの構築