El Client es el punto de entrada principal del SDK de OSS para Node.js. Se utiliza para gestionar recursos de OSS, como buckets y objetos. Para enviar solicitudes a OSS, primero debe inicializar una instancia de Client y, de manera opcional, personalizar su configuración predeterminada.
Notas de uso
Debe configurar las credenciales de acceso antes de inicializar una instancia de OSSClient. Este tema proporciona un ejemplo con variables de entorno. Para obtener más información, consulte Configure access credentials (Node.js SDK).
Para consultar la información sobre las regiones de OSS y sus endpoints correspondientes, consulte Regions and endpoints.
Para conocer cómo crear un par de AccessKey para un usuario de Resource Access Management (RAM), consulte Create an AccessKey pair.
Requisitos previos
Antes de configurar el cliente, debe establecer las variables de entorno mediante el AccessKey de un usuario de RAM.
-
-
Configure las variables de entorno para el par de AccessKey.
Linux
-
Ejecute los siguientes comandos en el CLI para agregar la configuración de las variables de entorno al archivo
~/.bashrc:echo "export OSS_ACCESS_KEY_ID='YOUR_ACCESS_KEY_ID'" >> ~/.bashrc echo "export OSS_ACCESS_KEY_SECRET='YOUR_ACCESS_KEY_SECRET'" >> ~/.bashrc-
Aplique los cambios.
source ~/.bashrc -
Compruebe si las variables de entorno surtieron efecto:
echo $OSS_ACCESS_KEY_ID echo $OSS_ACCESS_KEY_SECRET
-
macOS
-
Ejecute el siguiente comando en la terminal para consultar el tipo de shell predeterminado:
echo $SHELL-
Configure las variables de entorno según el tipo de shell predeterminado.
Zsh
-
Ejecute los siguientes comandos para agregar la configuración de las variables de entorno al archivo
~/.zshrc:echo "export OSS_ACCESS_KEY_ID='YOUR_ACCESS_KEY_ID'" >> ~/.zshrc echo "export OSS_ACCESS_KEY_SECRET='YOUR_ACCESS_KEY_SECRET'" >> ~/.zshrc -
Aplique los cambios.
source ~/.zshrc -
Compruebe si las variables de entorno surtieron efecto:
echo $OSS_ACCESS_KEY_ID echo $OSS_ACCESS_KEY_SECRET
Bash
-
Ejecute los siguientes comandos para agregar la configuración de las variables de entorno al archivo
~/.bash_profile:echo "export OSS_ACCESS_KEY_ID='YOUR_ACCESS_KEY_ID'" >> ~/.bash_profile echo "export OSS_ACCESS_KEY_SECRET='YOUR_ACCESS_KEY_SECRET'" >> ~/.bash_profile -
Aplique los cambios.
source ~/.bash_profile -
Compruebe si las variables de entorno surtieron efecto:
echo $OSS_ACCESS_KEY_ID echo $OSS_ACCESS_KEY_SECRET
-
-
Windows
CMD
-
Ejecute los siguientes comandos en CMD:
setx OSS_ACCESS_KEY_ID "YOUR_ACCESS_KEY_ID" setx OSS_ACCESS_KEY_SECRET "YOUR_ACCESS_KEY_SECRET"-
Compruebe si las variables de entorno surten efecto:
echo %OSS_ACCESS_KEY_ID% echo %OSS_ACCESS_KEY_SECRET%
-
PowerShell
-
Ejecute los siguientes comandos en PowerShell:
[Environment]::SetEnvironmentVariable("OSS_ACCESS_KEY_ID", "YOUR_ACCESS_KEY_ID", [EnvironmentVariableTarget]::User) [Environment]::SetEnvironmentVariable("OSS_ACCESS_KEY_SECRET", "YOUR_ACCESS_KEY_SECRET", [EnvironmentVariableTarget]::User)-
Compruebe si la variable de entorno surte efecto:
[Environment]::GetEnvironmentVariable("OSS_ACCESS_KEY_ID", [EnvironmentVariableTarget]::User) [Environment]::GetEnvironmentVariable("OSS_ACCESS_KEY_SECRET", [EnvironmentVariableTarget]::User)
-
-
Después de establecer las variables de entorno, reinicie todas las sesiones de terminal o los IDE abiertos para que los cambios surtan efecto.
Ejemplos de configuración predeterminada
A continuación se muestran ejemplos de código que indican cómo configurar una instancia de OSSClient con Signature V4 y Signature V1.
Signature V4 (recommended)
Signature V1 (not recommended)
Ejemplos de configuración para casos de uso comunes
Los siguientes ejemplos de código muestran cómo configurar otros nombres de dominio. De forma predeterminada, estos ejemplos utilizan Signature V4 y la información de AccessKey de un usuario de RAM.
Ejemplo de configuración de un nombre de dominio interno
Si su aplicación está desplegada en una instancia de ECS de Alibaba Cloud y necesita acceder con frecuencia a recursos de OSS en la misma región, utilice un nombre de dominio interno. Esto reduce los costos de tráfico y mejora la velocidad de acceso.
El siguiente código muestra un ejemplo de cómo configurar una instancia de OSSClient mediante un nombre de dominio interno de OSS.
const OSS = require('ali-oss');
const client = new OSS({
// Obtain access credentials from environment variables. Before you run this code, make sure that the OSS_ACCESS_KEY_ID and OSS_ACCESS_KEY_SECRET environment variables are set.
accessKeyId: process.env.OSS_ACCESS_KEY_ID,
accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
// Set region to the region where the bucket is located. For example, for China (Hangzhou), set region to oss-cn-hangzhou.
region: 'oss-cn-hangzhou',
//Use Signature V4.
authorizationV4: true,
// Set bucket to the name of your bucket.
bucket: 'yourBucketName',
// Set endpoint to the internal endpoint of the region where the bucket is located. For example, for China (Hangzhou), set endpoint to https://oss-cn-hangzhou-internal.aliyuncs.com.
endpoint: 'yourEndpoint',
});
Ejemplo de configuración de un nombre de dominio personalizado
El siguiente código muestra un ejemplo de cómo configurar una instancia de OSSClient mediante un nombre de dominio personalizado.
Primero debe vincular el nombre de dominio personalizado al nombre de dominio predeterminado del bucket. De lo contrario, se genera un error. Para obtener más información sobre cómo vincular un nombre de dominio personalizado, consulte Access OSS using a custom domain name.
const OSS = require('ali-oss');
const client = new OSS({
// Obtain access credentials from environment variables. Before you run this code, make sure that the OSS_ACCESS_KEY_ID and OSS_ACCESS_KEY_SECRET environment variables are set.
accessKeyId: process.env.OSS_ACCESS_KEY_ID,
accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
// Set region to the region where the bucket is located. For example, for China (Hangzhou), set region to oss-cn-hangzhou.
region: 'oss-cn-hangzhou',
// Use the Signature V4 algorithm.
authorizationV4: true,
// Set bucket to the name of your bucket.
bucket: 'yourBucketName',
// Set endpoint to your custom domain name. For example, https://static.example.com.
endpoint: 'yourEndpoint',
// Set cname to true to enable the CNAME option.
cname: true,
});
Ejemplo de configuración de un endpoint de aceleración
El siguiente código muestra un ejemplo de cómo configurar una instancia de OSSClient mediante un endpoint de aceleración.
const OSS = require('ali-oss');
const client = new OSS({
// Obtain access credentials from environment variables. Before you run this code, make sure that the OSS_ACCESS_KEY_ID and OSS_ACCESS_KEY_SECRET environment variables are set.
accessKeyId: process.env.OSS_ACCESS_KEY_ID,
accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
// Set region to the region where the bucket is located. For example, for China (Hangzhou), set region to oss-cn-hangzhou.
region: 'oss-cn-hangzhou',
//Use Signature V4.
authorizationV4: true,
// Set bucket to the name of your bucket.
bucket: 'yourBucketName',
// Set endpoint to an acceleration endpoint. For example, oss-accelerate.aliyuncs.com.
endpoint: 'oss-accelerate.aliyuncs.com',
});
Referencias
Para obtener más información sobre las opciones de configuración de OSSClient, consulte los ejemplos en GitHub.

