Ao fazer upload de um arquivo (objeto) para um bucket, o OSS gera automaticamente uma URL de arquivo para acesso direto. Para acessar arquivos com um nome de domínio personalizado, vincule esse domínio ao bucket e adicione um registro CNAME.
Preparativos
Vincule um nome de domínio personalizado. Para mais informações, consulte Acessar o OSS com um nome de domínio personalizado.
Observações de uso
Ao usar ferramentas de empacotamento como Webpack e Browserify, instale o SDK do OSS para Browser.js executando o comando npm install ali-oss.
Se você tentar acessar um bucket do OSS pelo navegador sem regras CORS configuradas, o navegador rejeitará a requisição. Portanto, configure as regras CORS no bucket antes de acessá-lo via navegador. Para mais detalhes, consulte Instalação.
-
O SDK do OSS para Browser.js é usado principalmente em navegadores. Para evitar a exposição do seu par de AccessKey, use credenciais de acesso temporárias obtidas pelo Security Token Service (STS) para acessar o OSS.
As credenciais de acesso temporárias consistem em um par de AccessKey e um token de segurança. O par de AccessKey inclui um AccessKeyID e um AccessKeySecret. Para saber como obter credenciais de acesso temporárias, consulte Usar STS para autorização de acesso temporário.
Código de exemplo
O código a seguir mostra como inicializar o SDK com um nome de domínio personalizado.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Document</title>
<script src="https://gosspublic.alicdn.com/aliyun-oss-sdk-6.18.0.min.js"></script>
</head>
<body>
<script>
const client = new OSS({
// Specify a custom domain name. For example, example.com.
// Set yourRegion to the region where the bucket is located. For example, if the bucket is in the China (Hangzhou) region, set yourRegion to oss-cn-hangzhou.
region: 'yourRegion',
endpoint: "example.com",
authorizationV4: true,
// The temporary AccessKey pair (AccessKey ID and AccessKey secret) obtained from STS.
accessKeyId: "yourAccessKeyId",
accessKeySecret: "yourAccessKeySecret",
// The security token (SecurityToken) obtained from STS.
stsToken: 'yourSecurityToken',
// Specify the bucket name. For example, examplebucket.
bucket: "examplebucket",
cname: true,
});
</script>
</body>
</html>
A interface list_buckets não está disponível ao usar um nome de domínio personalizado.