Shoeisha Technology Media

CodeZine(コードジン)

記事種別から探す

Webブラウザからも可能! REST APIでOracle Database Cloud上のデータにアクセスする

Oracle Database Cloudでいってみよう! ~ モダンな企業向けクラウドアプリを一番かんたん・安全につくる方法 【第4回】

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2016/02/03 14:00

 Oracle Database Cloudの特徴の1つに、セキュアなデータアクセスを実現するREST APIを、データベースが直接提供する点が挙げられます。データアクセスに他のサービスを介さないため、アプリケーションのアーキテクチャがぐっとシンプルになります。今回は、このREST APIを利用してデータアクセスする方法を紹介します。

目次

なお、今回の説明は、Oracle Cloud上にデータベースサービスの環境をすでにお持ちであることを前提に進めます。データベースサービスの環境をお持ちでない方は、こちらの記事を参照してトライアル環境を取得してみてください。

また、スキーマサービスを前提として手順を記載していきますが、ほとんどの項目はインスタンスサービス(Database as a Service)でも同様に適用できるはずです。

REST APIコンソール

まず、REST APIを作成するためのコンソールにアクセスします。

Oracle Cloudにログインした直後のダッシュボードページから、データベース・スキーマサービスの「サービス・コンソールを開く」をクリックします。

データベース・スキーマサービスの「サービス・コンソールを開く」をクリック
データベース・スキーマサービスの「サービス・コンソールを開く」をクリック

コンソールのトップページが表示されます。ここで上段のSQL Workshopのプルダウンメニューから「RESTful Services」を選択します。

「RESTful Services」を選択
「RESTful Services」を選択

この画面がREST APIを作成・管理するときのホームページとなります。次図のように、サンプルのモジュールがあらかじめ1つ用意されています。このモジュールをクリックしてみると、empテーブル[1]にアクセスする一連のAPIを確認することができます。

サンプルのモジュールがあらかじめ1つ用意されている
サンプルのモジュールがあらかじめ1つ用意されている
モジュールをクリックすると、empテーブルにアクセスする一連のAPIを確認できる
モジュールをクリックすると、empテーブルにアクセスする一連のAPIを確認できる

[1]: empテーブルは社員をイメージしたテーブルで、サンプルテーブルとして用意されています。

REST APIの構造を理解されている方は、このAPI設定をいくつか確認してみることで「あーなるほど」と設定方法について概ね理解できるかもしれません。

以降では、基本的なユースケースに沿ってREST APIの作成方法を説明していきます。

REST API設定の構造

REST API設定は次の3つのコンポーネントで構成されます。

モジュール
トップレベルのコンポーネント。このAPIへのアクセスに必要な権限の設定やCORS設定を行う。
URIテンプレート
各APIのURIを設定する。
ハンドラー
HTTPメソッドごとにどのようなアクションを実行するかを設定する。URIテンプレートごとに作成する。

モジュール、URIテンプレート、ハンドラーの各コンポーネントの関係を図で表すと、次のようになります。

モジュール、URIテンプレート、ハンドラーの関係(注:URLは、スキーマサービスでは上記フォーマットになりますが、インスタンスサービスの場合は若干異なります)
モジュール、URIテンプレート、ハンドラーの関係(注:URLは、スキーマサービスでは上記フォーマットになりますが、インスタンスサービスの場合は若干異なります)

この図のとおり、各APIはURIテンプレートの文字列、そしてハンドラーが指定するHTTPメソッドによって一意に識別され、アクセスすることができます。追加でモジュールに各URIテンプレートに共通するURIプリフィックスを設定することもできます。

それではREST APIの設定を進めていきましょう。


  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

  • 中嶋 一樹(ナカジマ カズキ)

    日本オラクルのエバンジェリスト。Cloud Platformに関するエンジニアリングと啓蒙活動を担当。クラウドのビルディングブロックを使ったモダンなアプリケーションの開発、エコシステムの構築をライフワークにしている。公私ともに何かを開発していることが多い。

バックナンバー

連載:Oracle Database Cloudでいってみよう! ~ モダンな企業向けクラウドアプリを一番かんたん・安全につくる方法

おすすめ記事

All contents copyright © 2006-2016 Shoeisha Co., Ltd. All rights reserved. ver.1.5