全部产品
Search
文档中心

Object Storage Service:Upload callback (Node.js SDK)

更新时间:Nov 30, 2025

Saat sebuah objek diunggah, Object Storage Service (OSS) dapat memicu proses callback ke server aplikasi. Untuk mengonfigurasi upload callback, cukup tambahkan parameter callback yang diperlukan ke permintaan unggahan yang dikirim ke OSS.

Catatan

Konfigurasi callback mendukung pengaturan seperti callbackSNI. Untuk informasi selengkapnya, lihat Callback.

Catatan penting

Sebelum mengonfigurasi upload callback, pastikan Anda memahami fitur ini. Untuk informasi selengkapnya, lihat Upload callback.

Kode contoh

Kode berikut menunjukkan cara menggunakan upload callback untuk mengunggah file lokal examplefile.txt ke exampleobject.txt dalam bucket examplebucket.

const OSS = require("ali-oss");

var path = require("path");

const client = new OSS({
  // Ganti yourregion dengan wilayah tempat bucket berada. Misalnya, jika bucket berada di wilayah China (Hangzhou), atur Region menjadi oss-cn-hangzhou.
  region: "yourregion",
  // Dapatkan kredensial akses dari variabel lingkungan. Sebelum menjalankan kode contoh ini, pastikan variabel lingkungan OSS_ACCESS_KEY_ID dan OSS_ACCESS_KEY_SECRET telah diatur.
  accessKeyId: process.env.OSS_ACCESS_KEY_ID,
  accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
  authorizationV4: true,
  // Tentukan nama bucket.
  bucket: "examplebucket",
});

const options = {
  callback: {
    // Atur URL server callback. Contoh: http://oss-demo.aliyuncs.com:23450.
    url: "http://oss-demo.aliyuncs.com:23450",
    // (Opsional) Atur nilai Host dalam header permintaan callback. Ini adalah nilai Host yang dikonfigurasi di server Anda.
    //host: 'yourCallbackHost',
    // Atur nilai badan permintaan untuk callback.
    body: "bucket=${bucket}&object=${object}&var1=${x:var1}&var2=${x:var2}",
    // Atur Content-Type permintaan callback.
    contentType: "application/x-www-form-urlencoded",
    // Menentukan apakah OSS mengirim Server Name Indication (SNI) ke URL asal yang ditentukan oleh callbackUrl saat klien memulai permintaan callback.
    callbackSNI: true,
    // Atur parameter kustom untuk permintaan callback.
    customValue: {
      var1: "value1",
      var2: "value2",
    },
  },
};

async function put() {
  try {
    // Tentukan path lengkap objek dan path lengkap file lokal. Path lengkap objek tidak boleh mengandung nama bucket.
    // Jika Anda tidak menentukan path lokal, file akan diunggah dari path lokal yang sesuai dengan proyek program contoh secara default.
    let result = await client.put(
      "exampleobject.txt",
      path.normalize("/localpath/examplefile.txt"),
      options
    );
    console.log(result);
  } catch (e) {
    console.log(e);
  }
}

put();

Referensi

  • Untuk kode contoh lengkap mengenai upload callback, lihat contoh di GitHub.

  • Untuk referensi API mengenai upload callback, lihat Callback.

  • Untuk informasi tentang penyebab dan solusi kesalahan pada upload callback, lihat error 203.

  • Untuk informasi lebih lanjut mengenai pengaturan parameter dan catatan penting terkait fitur callback, lihat Callback.