HTTP API
File ManagerCommunity Edition+Upload file dari field lampiran maupun tabel file mendukung pemrosesan melalui HTTP API. Tergantung dari storage engine yang digunakan oleh field lampiran atau tabel file, ada cara pemanggilan yang berbeda.
Upload Sisi Server
Untuk storage engine open source bawaan project seperti S3, OSS, COS, HTTP API memanggil fitur upload yang sama dengan antarmuka pengguna, file diunggah melalui sisi server. Pemanggilan API memerlukan request header Authorization dengan JWT token berbasis login pengguna, jika tidak akan ditolak aksesnya.
Field Lampiran
Lakukan operasi create pada resource tabel lampiran (attachments), kirim request dengan metode POST, dan unggah konten biner melalui field file. Setelah dipanggil, file akan diunggah ke storage engine default.
Jika Anda perlu mengunggah file ke storage engine yang berbeda, Anda dapat menentukan storage engine yang sudah dikonfigurasi pada field tabel data melalui parameter attachmentField (jika tidak dikonfigurasi, akan diunggah ke storage engine default).
Tabel File
Upload ke tabel file akan secara otomatis menghasilkan record file. Lakukan operasi create pada resource tabel file, kirim request dengan metode POST, dan unggah konten biner melalui field file.
Untuk upload ke tabel file tidak perlu menentukan storage engine, file akan diunggah ke storage engine yang dikonfigurasi pada tabel tersebut.
Upload Sisi Client
Untuk storage engine yang kompatibel dengan S3 yang disediakan plugin komersial S3-Pro, upload melalui HTTP API perlu dilakukan melalui beberapa langkah.
Field Lampiran
-
Mendapatkan informasi storage engine
Lakukan operasi
getBasicInfopada tabel storage (storages), dengan menyertakan identifier ruang penyimpanan (storage name), untuk meminta informasi konfigurasi storage engineContoh informasi konfigurasi storage engine yang dikembalikan:
-
Mendapatkan informasi presign dari penyedia layanan
Lakukan operasi
createPresignedUrlpada resourcefileStorageS3, kirim request dengan metode POST, dan sertakan informasi terkait file di body, untuk mendapatkan informasi upload presignedPenjelasan:
- name: nama file
- size: ukuran file (dalam satuan bytes)
- type: tipe MIME file, dapat merujuk ke: Tipe MIME Umum
- storageId: id dari storage engine (field
idyang dikembalikan pada langkah pertama) - storageType: tipe storage engine (field
typeyang dikembalikan pada langkah pertama)
Contoh data request:
Struktur data informasi presigned yang didapat sebagai berikut
-
Upload File
Gunakan
putUrlyang dikembalikan untuk melakukan requestPUT, mengunggah file sebagai body.Penjelasan:
- putUrl: field
putUrlyang dikembalikan pada langkah sebelumnya - file_path: path file lokal yang akan diunggah
Contoh data request:
- putUrl: field
-
Membuat record baris file
Setelah upload berhasil, lakukan operasi
createpada resource tabel lampiran (attachments), kirim request dengan metode POST, untuk membuat record file.Penjelasan data dependency dalam data-raw:
- title: field
fileInfo.titleyang dikembalikan pada langkah sebelumnya - filename: field
fileInfo.keyyang dikembalikan pada langkah sebelumnya - extname: field
fileInfo.extnameyang dikembalikan pada langkah sebelumnya - path: default kosong
- size: field
fileInfo.sizeyang dikembalikan pada langkah sebelumnya - url: default kosong
- mimetype: field
fileInfo.mimetypeyang dikembalikan pada langkah sebelumnya - meta: field
fileInfo.metayang dikembalikan pada langkah sebelumnya - storageId: field
idyang dikembalikan pada langkah pertama
Contoh data request:
- title: field
Tabel File
Tiga langkah pertama sama dengan upload field lampiran, namun pada langkah keempat perlu membuat record file. Lakukan operasi create pada resource tabel file, kirim request dengan metode POST, dan unggah informasi file melalui body.
Penjelasan data dependency dalam data-raw:
- title: field
fileInfo.titleyang dikembalikan pada langkah sebelumnya- filename: field
fileInfo.keyyang dikembalikan pada langkah sebelumnya- extname: field
fileInfo.extnameyang dikembalikan pada langkah sebelumnya- path: default kosong
- size: field
fileInfo.sizeyang dikembalikan pada langkah sebelumnya- url: default kosong
- mimetype: field
fileInfo.mimetypeyang dikembalikan pada langkah sebelumnya- meta: field
fileInfo.metayang dikembalikan pada langkah sebelumnya- storageId: field
idyang dikembalikan pada langkah pertamaContoh data request:

