Objek Archive dan Cold Archive harus dipulihkan terlebih dahulu sebelum dapat dibaca. Topik ini menjelaskan cara memulihkan objek Archive dan Cold Archive.
Catatan penggunaan
Saat menggunakan alat packaging seperti Webpack dan Browserify, instal OSS SDK untuk Browser.js dengan menjalankan perintah npm install ali-oss.
Jika Anda ingin mengakses bucket OSS dari browser tetapi bucket tersebut belum dikonfigurasi dengan aturan CORS, browser akan menolak permintaan tersebut. Oleh karena itu, Anda harus mengonfigurasi aturan CORS pada bucket jika ingin mengaksesnya dari browser. Untuk informasi selengkapnya, lihat Instalasi.
Dalam kebanyakan kasus, OSS SDK untuk Browser.js digunakan di browser. Untuk mencegah pasangan AccessKey Anda terekspos, kami menyarankan agar Anda menggunakan kredensial akses temporary yang diperoleh dari Security Token Service (STS) untuk mengakses OSS.
Kredensial akses temporary terdiri atas pasangan AccessKey dan token keamanan. Pasangan AccessKey mencakup ID AccessKey dan Rahasia AccessKey. Untuk informasi selengkapnya tentang cara memperoleh kredensial akses temporary, lihat Gunakan STS untuk otorisasi akses temporary.
Memulihkan objek Archive
Kode berikut menunjukkan cara memulihkan objek Archive:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Document</title>
</head>
<body>
<button id='upload'>Upload</button>
<button id='restore'>Restore File</button>
<!--Impor file SDK.-->
<script type="text/javascript" src="https://gosspublic.alicdn.com/aliyun-oss-sdk-6.18.0.min.js"></script>
<script type="text/javascript">
const client = new OSS({
// Setel region ke wilayah tempat bucket berada. Misalnya, jika bucket berada di wilayah China (Hangzhou), setel region ke oss-cn-hangzhou.
region: 'yourRegion',
authorizationV4: true,
// ID AccessKey dan Rahasia AccessKey temporary yang diperoleh dari STS.
accessKeyId: 'yourAccessKeyId',
accessKeySecret: 'yourAccessKeySecret',
// Token keamanan (SecurityToken) yang diperoleh dari STS.
stsToken: 'yourSecurityToken',
// Nama bucket. Contohnya, examplebucket.
bucket: "examplebucket",
});
const upload = document.getElementById('upload')
const restore = document.getElementById('restore')
// Tentukan konten file yang akan diunggah.
const file = new Blob(['examplecontent'])
// Tentukan nama objek yang akan disimpan di bucket.
const fileName = 'example.txt'
// Unggah file dan atur kelas penyimpanannya ke Archive.
upload.addEventListener('click', () => {
client.put(fileName, file, {
headers: {
'x-oss-storage-class': 'Archive'
}
}).then(r => console.log(r))
})
// Pulihkan objek Archive.
restore.addEventListener('click', () => {
client.restore(fileName).then(r => console.log(r))
})
</script>
</body>
</html>Memulihkan objek Cold Archive
Kode berikut menunjukkan cara memulihkan objek Cold Archive:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Document</title>
</head>
<body>
<button id='upload'>Upload</button>
<button id='restore'>Restore File</button>
<!--Impor file SDK.-->
<script type="text/javascript" src="https://gosspublic.alicdn.com/aliyun-oss-sdk-6.18.0.min.js"></script>
<script type="text/javascript">
const client = new OSS({
// Setel region ke wilayah tempat bucket berada. Misalnya, jika bucket berada di wilayah China (Hangzhou), setel region ke oss-cn-hangzhou.
region: 'yourRegion',
authorizationV4: true,
// ID AccessKey dan Rahasia AccessKey temporary yang diperoleh dari STS.
accessKeyId: 'yourAccessKeyId',
accessKeySecret: 'yourAccessKeySecret',
// Token keamanan (SecurityToken) yang diperoleh dari STS.
stsToken: 'yourSecurityToken',
// Nama bucket. Contohnya, examplebucket.
bucket: "examplebucket",
});
const upload = document.getElementById("upload");
const restore = document.getElementById("restore");
// Tentukan konten file yang akan diunggah.
const file = new Blob(["examplecontent"]);
// Tentukan nama objek yang akan disimpan di bucket.
const fileName = "example1.txt";
// Unggah file dan atur kelas penyimpanannya ke ColdArchive.
upload.addEventListener("click", () => {
client
.put(fileName, file, {
headers: {
"x-oss-storage-class": "ColdArchive",
},
})
.then((r) => console.log(r));
});
// Expedited: Objek dipulihkan dalam waktu 1 jam.
// Standard: Objek dipulihkan dalam waktu 2 hingga 5 jam. Jika Anda tidak menentukan parameter JobParameters, Standard digunakan secara default.
// Bulk: Objek dipulihkan dalam waktu 5 hingga 12 jam.
// Days menentukan jumlah hari objek tetap dalam keadaan dipulihkan. Rentang nilai yang valid adalah 1 hingga 7.
// Pulihkan objek Cold Archive.
restore.addEventListener("click", () => {
client
.restore(fileName, {
type: "ColdArchive",
// Menentukan prioritas pemulihan.
// Expedited: Objek dipulihkan dalam waktu 1 jam.
// Standard: Objek dipulihkan dalam waktu 2 hingga 5 jam.
// Bulk: Objek dipulihkan dalam waktu 5 hingga 12 jam.
JobParameters: "Bulk",
// Jumlah hari objek tetap dalam keadaan dipulihkan. Nilai default adalah 1.
Days: 2,
})
.then((r) => console.log(r));
});
</script>
</body>
</html>Referensi
Untuk contoh kode lengkap tentang cara memulihkan objek Archive dan Cold Archive, lihat Contoh GitHub.
Untuk informasi selengkapnya tentang operasi API untuk memulihkan objek Archive dan Cold Archive, lihat RestoreObject.