Topik ini menjawab beberapa pertanyaan umum yang mungkin muncul saat menggunakan OSS SDK untuk Node.js.
Apa yang harus saya lakukan jika pesan kesalahan "The region must be conform to the specifications" muncul?
Kesalahan ini disebabkan oleh parameter Region yang tidak valid. Periksa apakah nilai parameter Region sudah benar. Untuk informasi lebih lanjut tentang ID wilayah, lihat Wilayah dan titik akhir.
Bagaimana cara mengaktifkan akses HTTPS?
Untuk mengaktifkan akses HTTPS, atur opsi secure ke true saat menginisialisasi OSS SDK untuk Node.js.
Bagaimana cara mendapatkan kemajuan unggah?
Anda dapat menggunakan parameter progress untuk memperoleh progres unggah saat melakukan unggah multi-bagian (Node.js SDK).
Bagaimana cara mendapatkan kemajuan unduhan?
Anda dapat menghitung kemajuan unduhan di OSS SDK untuk Node.js berdasarkan ukuran lalu lintas unduhan.
Bagaimana cara mengunggah gambar yang dikodekan dalam Base64?
Konversikan gambar menjadi objek File dan unggah ke server OSS dengan memanggil operasi API yang sesuai.
function dataURLtoFile(dataurl, filename) {
let arr = dataurl.split(','), mime = arr[0].match(/:(.*?);/)[1],
bstr = atob(arr[1]), n = bstr.length, u8arr = new Uint8Array(n);
while(n--){
u8arr[n] = bstr.charCodeAt(n);
}
return new File([u8arr], filename, {type:mime});
}
let file = dataURLtoFile('base64 content', '');
client.multipartUpload('oss file name', file).then( (res)=> {
console.log(res)
}).catch((err) => {
console.log(err)
});
Bagaimana cara mengunggah objek ke direktori tertentu?
Tambahkan awalan direktori ke nama objek yang ingin diunggah. Untuk informasi lebih lanjut, lihat Perbandingan antara OSS dan sistem file.
const OSS = require("ali-oss");
const client = new OSS({
// Tentukan wilayah tempat bucket berada. Misalnya, jika bucket berada di wilayah China (Hangzhou), atur region ke 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 disetel.
accessKeyId: process.env.OSS_ACCESS_KEY_ID,
accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
// Tentukan nama bucket.
bucket: 'yourbucketname'
});
client
.multipartUpload("base-dir/" + "object-name", "local-file", {
progress: async function (p) {
console.log("Progress: " + p);
},
})
.then((result) => {
console.log(result);
})
.then((res) => {
console.log(res);
})
.catch((err) => {
console.log(err);
});Bagaimana cara menghasilkan URL yang ditandatangani untuk mengunggah objek?
Jika menggunakan metode PUT untuk mengunggah objek, Anda perlu menghasilkan URL yang ditandatangani. Untuk informasi lebih lanjut, lihat Gunakan URL yang ditandatangani untuk otorisasi akses sementara.
URL yang ditandatangani tidak didukung untuk pengunggahan objek menggunakan metode POST. Sebagai gantinya, Anda dapat membuat permintaan POST untuk mengunggah objek. Saat membuat permintaan POST, pastikan Anda mengonfigurasi parameter Key, OSSAccessKeyId, policy, dan Signature sesuai urutan yang ditentukan dalam operasi API. Untuk informasi lebih lanjut mengenai operasi tersebut, lihat PostObject.
Bagaimana cara mendapatkan URL yang ditandatangani untuk objek?
Anda dapat memanggil metode signatureUrl untuk mendapatkan URL unduhan. Untuk informasi selengkapnya, lihat contoh di GitHub.
Error saat mengunduh objek lebih besar dari 1 GB: Response timeout for 60000ms, please increase the timeout or use multipartDownload.
Batas waktu untuk tugas unduhan di OSS SDK untuk Node.js adalah 60000 ms. Jika terjadi kesalahan batas waktu saat mengunduh objek lebih besar dari 1 GB, gunakan unduhan streaming untuk mengunduh objek secara bertahap dan perpanjang batas waktu sesuai kebutuhan. Untuk informasi lebih lanjut tentang unduhan streaming, lihat Unduhan streaming. Untuk informasi lebih lanjut tentang parameter batas waktu, lihat Parameter.