読む前に、アーカイブまたはコールドアーカイブオブジェクトを復元する必要があります。 このトピックでは、アーカイブまたはコールドアーカイブオブジェクトを復元する方法について説明します。
使用上の注意
WebpackやBrowserifyなどのパッケージングツールを使用する場合は、npm install ali-OSSコマンドを実行して、oss SDK for Browser.jsをインストールします。
ブラウザからOSSバケットにアクセスしたいが、バケットにCORSルールが設定されていない場合、ブラウザはリクエストを拒否します。 したがって、ブラウザからバケットにアクセスする場合は、バケットのCORSルールを設定する必要があります。 詳細については、「インストール」をご参照ください。
ほとんどの場合、ブラウザではOSS SDK for Browser.jsが使用されます。 AccessKeyペアが公開されないようにするには、Security Token Service (STS) から取得した一時的なアクセス資格情報を使用してOSSにアクセスすることを推奨します。
一時的なアクセス資格情報は、AccessKeyペアとセキュリティトークンで構成されます。 AccessKeyペアは、AccessKey IDとAccessKeyシークレットで構成されます。 一時的なアクセス資格情報を取得する方法の詳細については、「一時的なアクセス権限付与にSTSを使用する」をご参照ください。
Archive オブジェクトの復元
次のサンプルコードは、Archiveオブジェクトを復元する方法の例を示しています。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Document</title>
</head>
<body>
<button id="upload">Upload an Object</button>
<button id='restore'>Restore an Object</button>
<!-- Import the SDK file -->
<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({
// Specify the region in which the bucket is located. For example, if the bucket is located in the China (Hangzhou) region, set the region to oss-cn-hangzhou.
region: 'yourRegion',
// Specify the temporary AccessKey pair obtained from Security Token Service (STS). The AccessKey pair consists of an AccessKey ID and an AccessKey secret.
accessKeyId: 'yourAccessKeyId',
accessKeySecret: 'yourAccessKeySecret',
// Specify the security token obtained from STS.
stsToken: 'yourSecurityToken',
// Specify the name of the bucket. Example: examplebucket.
bucket: "examplebucket",
});
const upload = document.getElementById('upload')
const restore = document.getElementById('restore')
// Specify the content of the object to upload.
const file = new Blob(['examplecontent'])
// Specify the name of the object to upload to the bucket.
const fileName = 'example.txt'
// Upload the object and specify its storage class as Archive.
upload.addEventListener('click', () => {
client.put(fileName, file, {
headers: {
'x-oss-storage-class': 'Archive'
}
}).then(r => console.log(r))
})
// Restore the Archive object.
restore.addEventListener('click', () => {
client.restore(fileName).then(r => console.log(r))
})
</script>
</body>
</html>
Cold Archiveオブジェクトを復元する
次のコードは、Cold Archiveオブジェクトを復元する方法の例を示しています。
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Document</title>
</head>
<body>
<button id="upload">Upload an Object</button>
<button id='restore'>Restore an Object</button>
<!-- Import the SDK file -->
<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({
// Specify the region in which the bucket is located. For example, if the bucket is located in the China (Hangzhou) region, set the region to oss-cn-hangzhou.
region: 'yourRegion',
// Specify the temporary AccessKey pair obtained from STS. The AccessKey pair consists of an AccessKey ID and an AccessKey secret.
accessKeyId: 'yourAccessKeyId',
accessKeySecret: 'yourAccessKeySecret',
// Specify the security token obtained from STS.
stsToken: 'yourSecurityToken',
// Specify the name of the bucket. Example: examplebucket.
bucket: "examplebucket",
});
const upload = document.getElementById("upload");
const restore = document.getElementById("restore");
// Specify the content of the object to upload.
const file = new Blob(["examplecontent"]);
// Specify the name of the object to upload to the bucket.
const fileName = "example1.txt";
// Upload the object and specify its storage class as Cold Archive.
upload.addEventListener("click", () => {
client
.put(fileName, file, {
headers: {
"x-oss-storage-class": "ColdArchive",
},
})
.then((r) => console.log(r));
});
// Expedited: The object is restored within 1 hour.
// Standard: The object is restored within 2 to 5 hours. If the JobParameters parameter is not passed in, the default restoration priority is Standard.
// Bulk: The object is restored within 5 to 12 hours.
// Days specifies the duration in which the object can remain in the restored state. Unit: days. Valid values: 1 to 7.
// Restore the Cold Archive object.
restore.addEventListener("click", () => {
client
.restore(fileName, {
type: "ColdArchive",
// Specify the restoration priority.
// Expedited: The file is restored within 1 hour.
// Standard: The object is restored within 2 to 5 hours.
// Bulk: The object is restored within 5 to 12 hours.
JobParameters: "Bulk",
// Specifies the duration in which the object can remain in the restored state. Default value: 1 day.
Days: 2,
})
.then((r) => console.log(r));
});
</script>
</body>
</html>
関連ドキュメント
アーカイブオブジェクトまたはコールドアーカイブオブジェクトの復元に使用される完全なサンプルコードの詳細については、『GitHub』をご参照ください。
アーカイブまたはコールドアーカイブオブジェクトを復元するために呼び出すことができるAPI操作の詳細については、「RestoreObject」をご参照ください。