L'objet Client est le point d'entrée principal du SDK OSS pour Node.js. Il permet de gérer les ressources OSS, telles que les buckets et les objets. Pour envoyer des requêtes à OSS, vous devez d'abord initialiser une instance Client et personnaliser sa configuration par défaut si nécessaire.
Remarques sur l'utilisation
Vous devez configurer les identifiants d'accès avant d'initialiser une instance
OSSClient. Cette rubrique fournit un exemple utilisant des variables d'environnement. Pour plus d'informations, consultez la page Configurer les identifiants d'accès (SDK Node.js).Pour obtenir la liste des régions OSS et leurs endpoints correspondants, consultez la page Régions et endpoints.
Pour savoir comment créer une paire AccessKey pour un utilisateur RAM (Resource Access Management), consultez la page Créer une paire AccessKey.
Prérequis
Avant de configurer le client, vous devez définir les variables d'environnement à l'aide de la clé AccessKey d'un utilisateur RAM.
-
-
Configurez les variables d'environnement pour la paire AccessKey.
Linux
-
Exécutez les commandes suivantes dans l'interface CLI pour ajouter les configurations des variables d'environnement au fichier
~/.bashrc:echo "export OSS_ACCESS_KEY_ID='YOUR_ACCESS_KEY_ID'" >> ~/.bashrc echo "export OSS_ACCESS_KEY_SECRET='YOUR_ACCESS_KEY_SECRET'" >> ~/.bashrc-
Appliquez les modifications.
source ~/.bashrc -
Vérifiez si les variables d'environnement sont prises en compte :
echo $OSS_ACCESS_KEY_ID echo $OSS_ACCESS_KEY_SECRET
-
macOS
-
Exécutez la commande suivante dans le terminal pour afficher le type de shell par défaut :
echo $SHELL-
Configurez les variables d'environnement en fonction du type de shell par défaut.
Zsh
-
Exécutez les commandes suivantes pour ajouter les configurations des variables d'environnement au fichier
~/.zshrc:echo "export OSS_ACCESS_KEY_ID='YOUR_ACCESS_KEY_ID'" >> ~/.zshrc echo "export OSS_ACCESS_KEY_SECRET='YOUR_ACCESS_KEY_SECRET'" >> ~/.zshrc -
Appliquez les modifications.
source ~/.zshrc -
Vérifiez si les variables d'environnement sont prises en compte :
echo $OSS_ACCESS_KEY_ID echo $OSS_ACCESS_KEY_SECRET
Bash
-
Exécutez les commandes suivantes pour ajouter les configurations des variables d'environnement au fichier
~/.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 -
Appliquez les modifications.
source ~/.bash_profile -
Vérifiez si les variables d'environnement sont prises en compte :
echo $OSS_ACCESS_KEY_ID echo $OSS_ACCESS_KEY_SECRET
-
-
Windows
CMD
-
Exécutez les commandes suivantes dans CMD :
setx OSS_ACCESS_KEY_ID "YOUR_ACCESS_KEY_ID" setx OSS_ACCESS_KEY_SECRET "YOUR_ACCESS_KEY_SECRET"-
Vérifiez si les variables d'environnement sont prises en compte :
echo %OSS_ACCESS_KEY_ID% echo %OSS_ACCESS_KEY_SECRET%
-
PowerShell
-
Exécutez les commandes suivantes dans 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)-
Vérifiez si la variable d'environnement est prise en compte :
[Environment]::GetEnvironmentVariable("OSS_ACCESS_KEY_ID", [EnvironmentVariableTarget]::User) [Environment]::GetEnvironmentVariable("OSS_ACCESS_KEY_SECRET", [EnvironmentVariableTarget]::User)
-
-
Après avoir défini les variables d'environnement, redémarrez toutes les sessions de terminal ou les IDE ouverts pour que les modifications soient prises en compte.
Exemples de configuration par défaut
Les exemples de code suivants montrent comment configurer une instance OSSClient à l'aide des algorithmes Signature V4 et Signature V1.
Signature V4 (recommandé)
Signature V1 (non recommandé)
Exemples de configuration pour les cas d'utilisation courants
Les exemples de code suivants montrent comment configurer d'autres noms de domaine. Par défaut, ces exemples utilisent la signature V4 et les informations AccessKey d'un utilisateur RAM.
Exemple de configuration de nom de domaine interne
Si votre application est déployée sur une instance ECS Alibaba Cloud et doit accéder fréquemment aux ressources OSS situées dans la même région, utilisez un nom de domaine interne pour réduire les coûts de trafic et améliorer la vitesse d'accès.
Le code suivant illustre la configuration d'une instance OSSClient à l'aide d'un nom de domaine interne 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',
});
Exemple de configuration de nom de domaine personnalisé
Le code suivant illustre la configuration d'une instance OSSClient à l'aide d'un nom de domaine personnalisé.
Vous devez d'abord lier le nom de domaine personnalisé au nom de domaine par défaut du bucket. Sinon, une erreur se produit. Pour plus d'informations sur la liaison d'un nom de domaine personnalisé, consultez la page Accéder à OSS à l'aide d'un nom de domaine personnalisé.
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,
});
Exemple de configuration d'endpoint d'accélération
Le code suivant illustre la configuration d'une instance OSSClient à l'aide d'un endpoint d'accélération.
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',
});
Références
Pour plus d'informations sur les options de configuration d'OSSClient, consultez les exemples sur GitHub.

