URL stabil
File ManagerCommunity Edition+File yang dikelola oleh storage engine NocoBase diakses melalui URL stabil. NocoBase memeriksa record file dan izin akses, lalu mengalihkan permintaan ke URL aktual yang dibuat oleh storage engine.
Format
Jika APP_PUBLIC_PATH=/nocobase, path dimulai dengan /nocobase/files/. ID dan ekstensi tidak dapat diubah setelah file dibuat, sehingga URL tetap stabil selama record masih ada.
Perilaku di NocoBase
- Field attachment, file collection, dan HTTP API mengembalikan URL stabil pada
urldanpreview - Markdown menyimpan URL stabil dan mendukung S3, OSS, COS, serta S3 Pro privat
- Field URL attachment mempertahankan URL eksternal yang dimasukkan manual dan memakai URL stabil untuk upload yang dikelola NocoBase
- Pratinjau biasa memakai sesi login dan izin file NocoBase saat ini
- Form publik hanya memberi akses terbatas ke file yang diunggah dalam sesi form tersebut
Pratinjau Office
Microsoft Office Online Viewer tidak dapat memakai cookie NocoBase milik pengguna. Saat pratinjau dibuka, NocoBase memeriksa izin terlebih dahulu lalu menerbitkan URL sementara yang terikat pada satu file. Masa berlaku default adalah 10 menit dan dapat diatur antara 5 sampai 10 menit melalui TEMPORARY_FILE_ACCESS_EXPIRES_IN.
Jangan simpan URL sementara ini ke field, Markdown, atau data bisnis, dan jangan gunakan sebagai tautan berbagi.
Catatan penting
- Stabil tidak berarti publik; penerima tetap memerlukan izin
- Menghapus atau memindahkan record ke konteks lain akan membatalkan URL lama
- Respons berupa pengalihan
302yang harus diikuti oleh klien - Jangan menyimpan
302 LocationatautemporaryAccessToken - Reverse proxy harus meneruskan rute
/files/di bawahAPP_PUBLIC_PATHke NocoBase. Untuk deployment pada subpath, pertahankan juga rute kompatibilitas/files/di root. Konfigurasi yang dibuat oleh NocoBase CLI otomatis mencakup kedua rute tersebut - Pada deployment ketika halaman mengakses API secara lintas origin (
API_BASE_URLmenunjuk ke origin lain), origin halaman harus ditambahkan keCORS_ORIGIN_WHITELIST. Jika tidak, cookie login tidak akan pernah tersimpan dan stable URL akan mengembalikan403karena kredensial tidak ikut terkirim. Lihat Variabel lingkungan - Gunakan
hostnameyang berbeda untuk setiap layanan NocoBase yang berdiri sendiri, bukan hanya membedakannya berdasarkan port. Cookie browser tidak diisolasi berdasarkan port; lihat Deployment environment produksi - Sub-app dalam deployment NocoBase yang sama dibedakan berdasarkan nama aplikasi dan tidak memerlukan hostname terpisah. Namun, layanan independen pada port lain tetap harus diisolasi dengan hostname jika memiliki aplikasi utama atau sub-app dengan nama yang sama
Tautan terkait
- HTTP API — Mengunggah dan mengambil file
- Pratinjau file — Format pratinjau yang didukung
- Pratinjau Office — Mengatur Office Viewer
- Storage engine — Mengatur penyimpanan file

