Pengembangan Skrip / Menulis dan Memanggil Fungsi
Dokumen ini merupakan dokumen paling dasar untuk pengembangan Skrip di DataFlux Func. Setelah membacanya, Anda dapat melakukan pengembangan dan penggunaan paling dasar di DataFlux Func.
1. Catatan Sebelum Membaca
Selama penggunaan DataFlux Func,
Jangan biarkan beberapa orang login dengan akun yang sama, dan jangan biarkan beberapa orang mengedit kode yang sama secara bersamaan.
untuk menghindari masalah kode yang saling menimpa atau hilang.
2. Menulis Fungsi Pertama dan Memanggilnya
Menulis kode di DataFlux Func tidak jauh berbeda dengan menulis kode Python biasa.
Untuk fungsi yang perlu diekspor sebagai API, cukup tambahkan dekorator bawaan @DFF.API(...).
Nilai balik fungsi adalah nilai balik API; ketika nilai balik berupa dict atau list, sistem akan otomatis memperlakukannya sebagai JSON dan mengembalikannya.
Berikut adalah contoh fungsi yang umum:
| Python | |
|---|---|
1 2 3 4 5 6 | |
Platform DataFlux Func menyediakan berbagai cara untuk memanggil fungsi yang didekorasi dengan DFF.API(...):
| Fitur Eksekusi | Karakteristik | Skenario Penggunaan |
|---|---|---|
| API Fungsi Sinkron | Menghasilkan HTTP API sinkron. Setelah dipanggil, langsung mengembalikan hasil pemrosesan | Skenario dengan waktu pemrosesan singkat dan klien perlu segera mendapatkan hasil |
| API Fungsi Asinkron | Menghasilkan HTTP API asinkron. Langsung merespons setelah dipanggil, tetapi tidak mengembalikan hasil pemrosesan | Skenario dengan waktu pemrosesan lama, panggilan API hanya sebagai sinyal awal |
| Tugas Terjadwal | Dijalankan secara otomatis berdasarkan sintaks Crontab | Sinkronisasi / cache data secara berkala, Tugas Terjadwal, dll. |
!!! tip \"Lihat selengkapnya: Pengembangan Skrip / Konsep Dasar\"
Di sini, dengan membuat API Fungsi untuk fungsi ini, Anda dapat memanggil fungsi ini melalui HTTP dari internet publik.
Misalkan ID API Fungsi yang dibuat untuk fungsi ini adalah func-api-xxxxx, maka cara paling sederhana untuk memanggil fungsi ini adalah sebagai berikut:
| Text Only | |
|---|---|
1 | |
Responsnya adalah sebagai berikut (sebagian konten dihilangkan):
| Text Only | |
|---|---|
1 2 3 4 | |
3. Menulis Fungsi yang Mendukung Unggah File
DataFlux Func juga mendukung unggah file melalui API Fungsi.
Ketika perlu memproses file yang diunggah, Anda dapat menambahkan parameter files pada fungsi untuk menerima informasi file yang diunggah.
Setelah file diunggah, DataFlux Func akan otomatis menyimpan file ke direktori unggahan sementara untuk diproses lebih lanjut oleh Skrip.
| Contoh | |
|---|---|
1 2 3 4 5 6 7 8 9 10 11 12 | |
Parameter files diisi secara otomatis oleh sistem DataFlux Func, dengan konten sebagai berikut:
| JSON | |
|---|---|
1 2 3 4 5 6 7 8 9 | |
Contoh perintah untuk mengunggah file dapat dilihat di Pengembangan Skrip / Konsep Dasar / API Fungsi / Penerusan Parameter Sederhana POST
4. Menerima Data Non-JSON dan Form
Ditambahkan pada versi 1.6.9
Dalam beberapa kasus, permintaan dapat dibuat oleh sistem atau aplikasi pihak ketiga dalam format khususnya sendiri, dan body permintaan bukan dalam format JSON atau Form, sehingga Anda dapat menggunakan **data sebagai parameter masukan dan memanggilnya dalam bentuk POST yang disederhanakan.
Ketika sistem menerima teks atau data yang tidak dapat diurai, sistem akan otomatis mengemasnya menjadi { "text": "<teks>" } atau { "base64": "<data biner format Base64>"} dan meneruskannya ke fungsi.
Contoh kodenya adalah sebagai berikut:
| Python | |
|---|---|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | |
Saat body permintaan berupa teks
Permintaannya adalah sebagai berikut:
| Bash | |
|---|---|
1 | |
Outputnya adalah sebagai berikut:
| Text Only | |
|---|---|
1 | |
Saat body permintaan berformat tidak diketahui
Permintaannya adalah sebagai berikut:
| Bash | |
|---|---|
1 | |
Outputnya adalah sebagai berikut:
| Text Only | |
|---|---|
1 | |