import { TosClient, TosClientError, TosServerError } from '@volcengine/tos_harmonyos_sdk';
const client = new TosClient({
accessKeyId: "Provide your ak",
accessKeySecret: "Provide your sk",
securityToken: 'Provide your securityToken',
region: "Provide your region",
endpoint: "Provide your endpoint",
function handleError(error: Error) {
if (error instanceof TosClientError) {
console.log('Client Err Msg:', error.message);
console.log('Client Err Stack:', error.stack);
} else if (error instanceof TosServerError) {
console.log('Request ID:', error.requestId);
console.log('Response Status Code:', error.statusCode);
console.log('Response Header:', error.headers);
console.log('Response Err Code:', error.code);
console.log('Response Err Msg:', error.message);
console.log('unexpected exception, message: ', error);
const srcBucket = 'harmonyos-sdk-test-bucket';
const srcObject = 'source-test';
const dstBucket = 'harmonyos-sdk-copy-bucket';
const dstObject = 'copy-test';
const res = await client.copyObject({
MetadataDirective: MetadataDirectiveType.MetadataDirectiveCopy,
console.log('copy result', res.ETag);
const headResult = await client.headObject({
console.log('headResult', headResult);
const res2 = await client.copyObject({
MetadataDirective: MetadataDirectiveType.MetadataDirectiveReplace,
SrcVersionID: StorageClassType.StorageClassIa,
ACL: ACLType.ACLPrivate,
console.log('copy result', res2.ETag);
const headResult2 = await client.headObject({
console.log('headResult', headResult2);