Upload File

Di sini ada perbedaan fungsional yang sangat penting antara menggunakan Server endpoint secara langsung dibandingkan dengan menggunakan Client SDK.

  • Server endpoint hanya untuk menghasilkan URL upload. Lalu proses upload file harus dilakukan secara mandiri ke URL tersebut.
  • Sedangkan Client SDK dapat menangani proses upload file.

Penanganan secara mandiri

graph TD ns([Mulai]) ne([Selesai]) n1[User mengunjungi app] n2{User terlogin?} n3[User login dengan metode<br>yang sudah dia gunakan] n4["Minta URL upload (1)"] n5["Lakukan upload file ke URL tersebut (2)"] ns-->n1-->n2 n2-- Ya -->n4 n2-- Tidak -->n3-->n4 n4-->n5-->ne

(1) Server endpoint: GET ​/uploadurl

(2) Upload file secara mandiri (contoh menggunakan Axios):

axios.request({
method: "PUT",
url: upload_url,
headers: {
"Content-Type": file.type,
},
data: file,
});

Menggunakan Client SDK

graph TD ns([Mulai]) ne([Selesai]) n1[User mengunjungi app] n2{User terlogin?} n3[User login dengan metode<br>yang sudah dia gunakan] n4["Lakukan upload file (1)"] ns-->n1-->n2 n2-- Ya -->n4 n2-- Tidak -->n3-->n4 n4-->ne

(1) Client SDK method: storage.upload(args)