Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

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

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

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

目次

レコードを挿入するAPIを作成する

それでは最後に、レコードを挿入するAPIを作成します。先ほど作成した社員モジュールの中に新しいURIテンプレートを作成するため、「Create Template」をクリックします。

社員モジュールの中に新しいURIテンプレートを作成開始
社員モジュールの中に新しいURIテンプレートを作成開始

今回のAPIには、「http[s]://[あなたのドメイン]/apex/employee」というURLでアクセスすることを想定し、「URI Template」に「employee」を指定して「Create]ボタンをクリックします。

URI Templateに「employee」を指定
URI Templateに「employee」を指定

URIテンプレートが作成されたら、ハンドラーを作成するために「Create Handler」をクリックします。

ハンドラーの作成開始
ハンドラーの作成開始

そして、やはり次のようにして、ハンドラーの詳細を設定します。

ハンドラーの詳細を設定
ハンドラーの詳細を設定
Method
今回はレコードを作成するAPIなので「POST」とします。
Source Type
PL/SQLを指定します。
Source
社員レコードを挿入するPL/SQL文を下記の通り設定します。
begin
     insert into em (ENAME) values (:ENAME);
end;

「:ENAME」はバインド変数で、POSTリクエストのBodyにセットされたJSONフォーマットのデータがここにセットされます。

上記のとおりに設定したら、[Create]ボタンをクリックしてハンドラーを作成します。

これでレコードを挿入するAPIが完成しました。ただし、このAPIをテストをするにはPOSTリクエストを生成する必要があるので、少しセットアップが必要です。筆者はChromeブラウザの「Advanced REST Client」というアドオンを使ってPOSTリクエストをテストしています。

Advanced REST Clientで今回のAPIにアクセスするには、次図のようにパラメーターをセットし、[Send]ボタンをクリックするだけです。

Advanced REST ClientでAPIにアクセスするには<br/>パラメーターをセットし[Send]ボタンをクリックするだけ
Advanced REST ClientでAPIにアクセスするには
パラメーターをセットし[Send]ボタンをクリックするだけ

HTTPメソッドとしてPOST、BodyにJSONフォーマットで「{"ENAME":"KAZUKI"}」と送信するデータを入力しています。また、コンテンツタイプとして「application/json」を指定しています。

このリクエストがステータスコード200で返ってくれば成功です。データベースにレコードが挿入されているかどうか確認してみてください。

まとめ

今回はクラウドサービスにおけるAPIの標準形ともいえるREST APIで、Oracle Database Cloudにアクセスする方法を紹介しました。REST APIはサービス間連携で必要となるだけでなく、モバイルアプリケーションやHTML5アプリケーションを提供する際には必須の機能です。

従来RDBMSではODBCやJDBCといった接続方法が主流でしたが、Oracle Database Cloudではクラウドでのユースケースで必要とされるREST APIで直接データベースにアクセスできるようになっています。この機能を活用することで、よりシンプルなアーキテクチャーでモバイルやHTML5、複数のサービスを組み合わせたエコシステムといった新しい利用シーンに対応できるでしょう。



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

著者プロフィール

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

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

バックナンバー

連載:Oracle Database Cloudでいってみよう! ~ モダンな企業向けクラウドアプリを一番かんたん・安全につくる方法
All contents copyright © 2005-2019 Shoeisha Co., Ltd. All rights reserved. ver.1.5