Al cargar un archivo (objeto) en un bucket, OSS genera automáticamente una URL de archivo que permite el acceso directo. Para acceder a los archivos mediante un nombre de dominio personalizado, debe asociar dicho nombre de dominio al bucket y agregar un registro CNAME.
Preparativos
Es necesario asociar un nombre de dominio personalizado. Para obtener más información, consulte Access OSS using a custom domain name.
Notas de uso
Si utiliza herramientas de empaquetado como Webpack o Browserify, instale el SDK de OSS para Browser.js mediante la ejecución del comando npm install ali-oss.
Si desea acceder a un bucket de OSS desde un navegador y no hay reglas CORS configuradas para dicho bucket, el navegador rechazará la solicitud. Por lo tanto, debe configurar reglas CORS en el bucket si pretende acceder a él desde un navegador. Para obtener más información, consulte Installation.
-
En la mayoría de los casos, el SDK de OSS para Browser.js se utiliza dentro de navegadores. Para evitar que su par de AccessKey quede expuesto, se recomienda utilizar credenciales de acceso temporal obtenidas a través de Security Token Service (STS) para acceder a OSS.
Las credenciales de acceso temporal constan de un par de AccessKey y un token de seguridad. El par de AccessKey incluye un AccessKey ID y un AccessKey secret. Para obtener más información sobre cómo conseguir credenciales de acceso temporal, consulte Use STS for temporary access authorization.
Código de ejemplo
A continuación se muestra cómo inicializar el SDK con un nombre de dominio 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>
La interfaz list_buckets no está disponible cuando se utiliza un nombre de dominio personalizado.