Lors du chargement d'un objet, Object Storage Service (OSS) peut déclencher un processus de callback vers le serveur d'application. Pour configurer les callbacks de chargement, ajoutez simplement les paramètres requis à la requête de chargement envoyée à OSS.
L'envoi du paramètre callbackSNI par OSS dépend de la configuration des paramètres de callback. Pour plus d'informations, consultez la rubrique Callback.
Remarques d'utilisation
Avant de configurer un callback de chargement, familiarisez-vous avec cette fonctionnalité. Pour plus d'informations, consultez la rubrique Callback de chargement.
Exemples
L'exemple de code suivant montre comment configurer les callbacks de chargement lors du transfert d'un fichier local nommé examplefile.txt vers un bucket nommé examplebucket. Une fois le fichier local chargé, l'objet correspondant dans OSS est nommé exampleobject.txt.
const OSS = require("ali-oss");
var path = require("path");
const client = new OSS({
// Specify the region in which the bucket is located. For example, if the bucket is located in the China (Hangzhou) region, set the region to oss-cn-hangzhou.
region: "yourregion",
// Obtain access credentials from environment variables. Before you run the sample code, make sure that the OSS_ACCESS_KEY_ID and OSS_ACCESS_KEY_SECRET environment variables are configured.
accessKeyId: process.env.OSS_ACCESS_KEY_ID,
accessKeySecret: process.env.OSS_ACCESS_KEY_SECRET,
authorizationV4: true,
// Specify the name of the bucket.
bucket: "examplebucket",
});
const options = {
callback: {
// Specify the address of the callback server that receives the callback request. Example: http://oss-demo.aliyuncs.com:23450.
url: "http://oss-demo.aliyuncs.com:23450",
// (Optional) Specify the Host field included in the callback request header.
//host: 'yourCallbackHost',
// Specify the body of the callback request.
body: "bucket=${bucket}&object=${object}&var1=${x:var1}&var2=${x:var2}",
// Specify Content-Type in the callback request.
contentType: "application/x-www-form-urlencoded",
// Specifies whether OSS sends Server Name Indication (SNI) to the origin address specified by callbackUrl when a callback request is initiated from the client.
callbackSNI: true,
// Configure custom parameters for the callback request.
customValue: {
var1: "value1",
var2: "value2",
},
},
};
async function put() {
try {
// Specify the full paths of the object and the local file. Do not include the bucket name in the full path of the object.
// By default, if you do not specify the path of the local file, the file is uploaded from the local path of the project to which the sample program belongs.
let result = await client.put(
"exampleobject.txt",
path.normalize("/localpath/examplefile.txt"),
options
);
console.log(result);
} catch (e) {
console.log(e);
}
}
put();
Références
Pour consulter l'exemple de code complet permettant de configurer les callbacks de chargement, rendez-vous sur GitHub.
Pour plus d'informations sur l'opération API à appeler pour configurer les callbacks de chargement, consultez la rubrique Callback.
Pour en savoir plus sur les causes et les solutions aux erreurs de callback de chargement, consultez la rubrique Erreur 203.
Pour obtenir des détails sur les paramètres de la fonctionnalité de callback et les remarques d'utilisation, consultez la rubrique Callback.