logologo
スタート
マニュアル
開発
プラグイン
API
English
简体中文
日本語
한국어
Deutsch
Français
Español
Português
Русский
Italiano
Türkçe
Українська
Tiếng Việt
Bahasa Indonesia
ไทย
Polski
Nederlands
Čeština
العربية
עברית
हिन्दी
Svenska
スタート
マニュアル
開発
プラグイン
API
logologo
概要

データソース

データソース管理
メインデータソース

外部データソース(データベース)

紹介
外部 MySQL
外部 MariaDB
外部 PostgreSQL
外部 MSSQL
外部 Oracle
メインDB・外部DB比較
REST API データソース
KingbaseES データソース

データテーブル

概要
標準テーブル
継承テーブル
ファイルテーブル
ツリーテーブル
カレンダーテーブル
コメントテーブル
式テーブル
SQL テーブル
データベースビュー

テーブルフィールド

概要
フィールド検証

基本タイプ

一行テキスト
複数行テキスト
携帯電話番号
メールアドレス
URL
整数
数値
パーセンテージ
パスワード
カラー
アイコン

選択タイプ

チェック
ドロップダウン(単一選択)
ドロップダウン(複数選択)
ラジオボタン
チェックボックス

マルチメディア

Markdown
Markdown (Vditor)
リッチテキスト
添付ファイル(リレーション)
添付ファイル(URL)

日付 & 時刻

概要
日時(タイムゾーン付き)
日時(タイムゾーンなし)
Unix タイムスタンプ
日付(時刻なし)
時刻

ジオメトリ

ポイント
ライン
円
ポリゴン

高度なタイプ

UUID
Nano ID
並び順
計算式
自動採番
JSON
データテーブル選択
暗号化

システム情報

作成日時
最終更新日時
作成者
最終更新者
スペース
テーブルOID

リレーションタイプ

概要
1対1
1対多
多対1
多対多
多対多(配列)

開発

概要
Previous PageメインDB・外部DB比較
Next PageKingbaseES データソース
TIP

このドキュメントはAIによって翻訳されました。不正確な情報については、英語版をご参照ください

#REST API データソース

This feature is provided by the commercial plugin «データソース:REST API», please purchase to use

#はじめに

このプラグインを使うと、REST API からのデータをシームレスに連携できます。

#インストール

このプラグインは商用プラグインのため、プラグインマネージャーからアップロードして有効化する必要があります。

20240323162741

#REST API データソースの追加

プラグインを有効化した後、データソース管理の「新規追加」ドロップダウンメニューから「REST API」を選択して、REST API データソースを追加できます。

20240721171420

REST API データソースを設定します。

20240721171507

#コレクションの追加

NocoBase では、RESTful なリソースはコレクションにマッピングされます。例えば、Users リソースの場合です。

GET /users
POST /users
GET /users/1
PUT /users/1
DELETE /users/1

これらのAPIエンドポイントは、NocoBase API では次のようにマッピングされます。

GET /users:list
POST /users:create
POST /users:get?filterByTk=1
POST /users:update?filterByTk=1
POST /users:destroy?filterByTk=1

NocoBase API の設計仕様に関する詳細なガイドについては、API ドキュメントを参照してください。

20240716213344

詳細については、「NocoBase API - Core」の章をご確認ください。

20240716213258

REST API データソースのコレクション設定は以下の通りです。

#List

リソースのリストを表示するためのインターフェースをマッピングします。

20240716211351

#Get

リソースの詳細を表示するためのインターフェースをマッピングします。

20240716211532

#Create

リソースを作成するためのインターフェースをマッピングします。

20240716211634

#Update

リソースを更新するためのインターフェースをマッピングします。 20240716211733

#Destroy

リソースを削除するためのインターフェースをマッピングします。

20240716211808

List と Get の両インターフェースは、必須で設定する必要があります。

#API のデバッグ

#リクエストパラメータの連携

例: List インターフェースにページネーションパラメータを設定します。(もしサードパーティAPIがページネーションをネイティブでサポートしていない場合、NocoBase は取得したリストデータに基づいてページネーションを行います。)

20241121205229

インターフェースに追加された変数のみが有効になることにご注意ください。

サードパーティAPIのパラメータ名NocoBase のパラメータ
page{{request.params.page}}
limit{{request.params.pageSize}}

「Try it out」をクリックしてデバッグし、レスポンス結果を確認できます。

20241121210320

#レスポンス形式の変換

サードパーティAPIのレスポンス形式は NocoBase の標準ではない場合があり、フロントエンドで正しく表示するためには変換が必要です。

20241121214638

サードパーティAPIのレスポンス形式に基づいて変換ルールを調整し、NocoBase の出力標準に準拠するようにします。

20241121215100

デバッグプロセスの説明

20240717110051

#変数

REST API データソースは、API 連携のために3種類の変数を提供しています。

  • データソースのカスタム変数
  • NocoBase リクエスト変数
  • サードパーティレスポンス変数

#データソースのカスタム変数

20240716221937

20240716221858

#NocoBase リクエスト

  • Params:URL クエリパラメータ(Search Params)です。各インターフェースによって異なります。
  • Headers:リクエストヘッダーです。主に NocoBase 独自の X- 情報を提供します。
  • Body:リクエストボディです。
  • Token:現在の NocoBase リクエストの API トークンです。

20240716222042

#サードパーティレスポンス

現在、レスポンスボディのみが提供されています。

20240716222303

各インターフェース連携時に利用可能な変数は以下の通りです。

#List

パラメータ説明
request.params.page現在のページ番号
request.params.pageSize1ページあたりの項目数
request.params.filterフィルター条件(NocoBase のフィルター形式に準拠する必要があります)
request.params.sortソートルール(NocoBase のソート形式に準拠する必要があります)
request.params.appendsオンデマンドで読み込むフィールド。通常、関連フィールドのオンデマンド読み込みに使用されます。
request.params.fieldsインターフェースが出力するフィールド(ホワイトリスト)
request.params.except除外するフィールド(ブラックリスト)

#Get

パラメータ説明
request.params.filterByTk必須。通常、現在のデータIDです。
request.params.filterフィルター条件(NocoBase のフィルター形式に準拠する必要があります)
request.params.appendsオンデマンドで読み込むフィールド。通常、関連フィールドのオンデマンド読み込みに使用されます。
request.params.fieldsインターフェースが出力するフィールド(ホワイトリスト)
request.params.except除外するフィールド(ブラックリスト)

#Create

パラメータ説明
request.params.whiteListホワイトリスト
request.params.blacklistブラックリスト
request.body作成する初期データ

#Update

パラメータ説明
request.params.filterByTk必須。通常、現在のデータIDです。
request.params.filterフィルター条件(NocoBase のフィルター形式に準拠する必要があります)
request.params.whiteListホワイトリスト
request.params.blacklistブラックリスト
request.body更新するデータ

#Destroy

パラメータ説明
request.params.filterByTk必須。通常、現在のデータIDです。
request.params.filterフィルター条件(NocoBase のフィルター形式に準拠する必要があります)

#フィールドの設定

適応されたリソースの CRUD インターフェースデータから、フィールドのメタデータ(Fields)をコレクションのフィールドとして抽出します。

20240716223636

フィールドのメタデータを抽出します。

20241121230436

フィールドとプレビュー。

20240716224403

フィールドを編集します(他のデータソースと同様の方法です)。

20240716224704

#REST API データソースブロックの追加

コレクションの設定が完了したら、インターフェースにブロックを追加できます。

20240716225120