PARの詳細とノート: APEX RESTfulデータ・サービス (2025/07/01)

PARの詳細とノート: APEX RESTfulデータ・サービス (2025/07/01)

https://www.thatjeffsmith.com/archive/2025/07/more-on-pars-and-a-note-re-apex-restful-data-services/

Oracle REST Data Services (ORDS) バージョン25.2がリリースされました。

前回の投稿で、新しい事前認証リクエスト機能を使用して、 ORDS RESTモジュールエンドポイントへの一時的かつ安全なアクセスを設定する方法について少しご紹介しました。

この例では、POSTハンドラーでPARを作成するためのPL/SQL API呼び出しを共有しました。これにより、IoTデバイスはORDS REST APIを介して気象データをOracle Databaseに送信できるようになります。

PL/SQL
DECLARE
  l_uri clob;
BEGIN
   l_uri := ORDS_PAR.DEFINE_FOR_HANDLER(
    p_module_name => 'thatjeffsmith',
    p_pattern => 'sensor_data/',
    p_method => 'POST',
    p_duration => 15769728
  );
  COMMIT;
  dbms_output.put_line(l_uri);
END;
/

しかし、ORDS 25.2のReadmeを読んだ方ならお気づきでしょうが、PARはSQL Developer WebのREST Workshopを介してUIサポートされるようになりました。

SQL Developer Web での PAR の作成と管理

ハンドラーレベルに存在するPAR。

つまり、従業員/ハンドラーなどのリソースを持つことができます。

  • GET
  • PUT
  • POST
  • DELETE…

…そして、GETアクセス用のPARを作成します。

それは私次第ですが、私たちはそれらすべてをサポートしています。ただし、もし私がそうしたい場合、従業員に関する4つの動詞に対して4つのPARが必要になります。

つまり、GETハンドラーを構築している間にも、そのGETハンドラーに必要なPARを操作することができるのです。

SQL Developer Web バージョン 25.2 では、ハンドラー IDE に PAR セクションが追加されました。

あるいは、便利なケバブボタンを使ってみましょう…

はい、それはケバブと呼ばれています。そして、はい、ダークモードにも対応しました!

簡単なデモ

観察結果:

  • 秒から間隔への計算は私たちが行います
  • レスポンスに含まれるURL/トークンを必ず取得してください!
  • 発行したPARの数を簡単に確認でき、いつでも取り消し(削除)できます。

この機能は、REST API開発者向けインターフェースとユーザーエクスペリエンスが長年にわたってどのように進化してきたかを示す一例であり、今後もさらなる進化が期待できます。次の大きな課題は、REST APIの構築と保守のためのUIを簡素化し、より簡単かつ迅速に行えるようにすることです。これは、VS Code拡張機能にインターフェースを追加するためのテンプレートとしても機能します。

APEXにおけるRESTfulサービスインターフェースについて

APEX の SQL ワークショップは、ずっと昔から存在しています。そして、その機能から、ORDS 用のこのユーティリティを含む、いくつかの便利なユーティリティが生まれました。

この画面は、数年前に当社の元ORDS開発者の1人(名前はDougと韻を踏む)によって作成されたもので、SQL Developer Webよりも前に作られたものです。

長年にわたり、ORDSには数多くの機能が追加されてきましたが、それらの機能はまだORDS REST APIのAPEX開発画面には反映されていません。例えば、ORDS REST APIとSQL Developer WebのIDEがサポートしている機能についてご存知でしょうか?

  • インテリセンス、構文ハイライト、:bind変数挿入などを備えたRESTハンドラーエディタ
  • Swaggerツールページが組み込まれており、「試してみる」機能やコード生成スニペットも完備しています。
  • 任意のAutoRESTまたはRESTモジュールAPI用のcURLスニペット生成
  • OAuth2クライアントの管理(OAUTH plsql -> ORDS_SECURITY を思い出す)
  • OpenAPI仕様のインポートと生成
  • 有効化されたテーブル/ビューに対してGraphQLを使用するためのGraphiqlエディタ

ORDS REST API の管理に 2 つの異なる Web IDE を維持するのは非効率的であるため、APEX の従来のインターフェースは非推奨となりました。画面が完全に消えるわけではありませんが、読み取り専用になります。新しい API を作成したり、既存の API を更新したりする必要がある場合は、SQL Developer Web にアクセスして作業を行う必要があります。

APEX開発者の場合、ワークスペースのスキーマがREST対応になっている場合は、既存のAPEX認証済みセッションを使用してORDS画面にアクセスするか、データベースのユーザー名とパスワードを使用して新しいセッションを開始できます。この作業を頻繁に行う場合は、SQL Developer WebのRESTワークショップのURLをブックマークしておくと便利です。URLは常に同じです。

APEXドキュメント:APEXからSQL Developer Webにアクセスする

SQL Developer Web をご利用の際、いくつか興味深い情報をご紹介します…

これまで使ったことがなくても、いつでも利用できます。覚えておいてください。APEXはORDSなしでは動作せず、SQL Developer WebはORDSのデフォルト機能です。

このSQLワークシートは、APEXで使用しているSQLワークシートを作成した人物、そう、あの人物によって設計されました。しかし、こちらははるかに多くの機能を提供し、SQL、PL/SQL、スクリプトの実行において、より多くの機能をサポートしています。

他にも役立つ画面がいくつかあります。

コメント