Lewati ke isi

Pengembangan Skrip / File Respons DFF.RESP_FILE

Saat mengembalikan file yang sudah ada di direktori sumber daya, gunakan DFF.RESP_FILE(...). file_path langsung diisi dengan jalur relatif sumber daya, tidak perlu memanggil DFF.RSRC(...) terlebih dahulu.

Parameter

Parameter Tipe Wajib / Nilai Default Keterangan
file_path str Wajib Jalur relatif direktori sumber daya
status_code int 200 Kode status HTTP
headers dict None Header respons tambahan
allow_304 bool False Apakah mengizinkan browser menggunakan cache 304
auto_delete bool False Apakah otomatis menghapus file disk setelah respons dikirim
download bool / str True True unduh dengan nama file asli; False coba buka di browser; string menentukan nama unduhan

Sistem akan otomatis mengisi Content-Type berdasarkan ekstensi file.

Contoh
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
def download_pdf():
    return DFF.RESP_FILE('user-guide.pdf')

def open_pdf_in_browser():
    return DFF.RESP_FILE('user-guide.pdf', download=False)

def download_report():
    return DFF.RESP_FILE('report.xlsx', download='report.xlsx')

def download_temporary_export():
    return DFF.RESP_FILE('tmp/export.csv', auto_delete=True)

Saat membuat DFF.RESP_FILE(...), file harus sudah ada, dan jalur yang telah diurai harus berada di dalam direktori akar sumber daya yang dikonfigurasi. auto_delete=True akan menghapus file setelah respons dikirim; file yang dibagikan atau perlu digunakan berulang kali tidak boleh mengaktifkan opsi ini.

File besar yang dihasilkan saat runtime harus ditulis ke direktori sumber daya terlebih dahulu, lalu dikembalikan melalui metode ini; file sementara dapat menggunakan auto_delete=True. Output biner harus ditulis ke file biner, jangan meneruskan byte biner ke DFF.RESP(...) atau DFF.RESP_LARGE_DATA(...).