Tampilan database di REST API

Tampilan didukung sebagai alternatif untuk tabel di Penyusun API Data (DAB). Tampilan dapat diekspos melalui titik akhir REST dengan konfigurasi minimal.

Konfigurasi

Untuk mengekspos tampilan:

  • Atur source.type ke "view"
  • Atur source.object ke nama tampilan yang sepenuhnya memenuhi syarat
  • Untuk mengidentifikasi baris secara unik, tentukan key-fields
  • Berikan izin menggunakan "read" tindakan (dan opsional "create", "update", "delete" jika tampilan dapat diperbarui)

Contoh CLI

dab add BookDetail \
  --source dbo.vw_books_details \
  --source.type "view" \
  --fields.name "id" \
  --fields.primary-key "true" \
  --permissions "anonymous:read"

Contoh konfigurasi

"BookDetail": {
  "source": {
    "type": "view",
    "object": "dbo.vw_books_details",
    "key-fields": [ "id" ]
  },
  "permissions": [
    {
      "role": "anonymous",
      "actions": [ "read" ]
    }
  ]
}

Perilaku REST

  • Mendukung semua kata kerja REST: GET, , POST, PUT, PATCHDELETE
  • Perilaku default identik dengan entitas yang didukung tabel
  • Operasi berhasil hanya jika tampilan dapat diperbarui dan izin yang sesuai diatur

Contoh permintaan

GET /api/BookDetail/id/42

Mengembalikan baris dari vw_books_details dengan id = 42.

Permissions

  • Gunakan aksi read untuk tampilan hanya-baca
  • Gunakan create, update, dan delete hanya jika tampilan dapat diperbarui

Keterbatasan

  • key-fields diperlukan
  • Tampilan tidak mendukung hubungan
  • Penomoran halaman, pemfilteran, dan pengurutan didukung jika tampilan bersifat seperti tabel