"/> ">

Maison  >  Article  >  interface Web  >  Javascript implémente la signature oss

Javascript implémente la signature oss

WBOY
WBOYoriginal
2023-05-12 13:18:07709parcourir

Lorsque vous utilisez Javascript pour télécharger des fichiers vers le service de stockage d'objets Alibaba Cloud OSS, vous devez générer une signature pour la demande. Cet article explique comment utiliser Javascript pour implémenter la signature OSS.

  1. Présentation du SDK

Vous devez d'abord présenter l'oss-sdk-js d'Alibaba Cloud, qui peut être introduit via le code suivant : #🎜 🎜#

<script src="//gosspublic.alicdn.com/aliyun-oss-sdk-6.6.5.min.js"></script>
# 🎜🎜#

Initialize OSS object
  1. Dans le code, vous devez utiliser AK, SK et Endpoint pour initialiser l'objet OSS :
const client = new OSS({
  accessKeyId: 'YourAccessKeyId',
  accessKeySecret: 'YourAccessKeySecret',
  endpoint: 'YourEndpoint',
  bucket: 'YourBucketName'
})

Parmi eux, vous devez remplacer YourAccessKeyId, YourAccessKeySecret, YourEndpoint et YourBucketName par l'AK, SK, Endpoint et BucketName de votre compte Alibaba Cloud.

Générer une signature
  1. Avant de télécharger le fichier, vous devez générer une signature pour la demande. La signature est générée comme suit :
const sign = await client.signatureUrl('YourObjectName', {
  expires: 3600,  // 签名有效期,单位是秒
  method: 'PUT'   // 请求方法,可以是PUT或者POST
})

Où YourObjectName est le chemin du fichier téléchargé. expires représente la période de validité de la signature, qui peut être personnalisée et l'unité est la seconde. méthode indique la méthode de requête, qui peut être PUT ou POST.

Téléchargement de fichiers
  1. Après avoir la signature, le téléchargement de fichiers est mis en œuvre via JavaScript :
const file = document.querySelector('input[type=file]').files[0]
client.put('YourObjectName', file, {   
  progress: function* (p) {
    console.log('Progress:', p)
  }
}).then(r => {
    console.log('上传成功')
})

Où, fichier Cet objet File doit être obtenu via input[type=file]. YourObjectName indique le chemin du fichier téléchargé, qui doit être cohérent avec le chemin dans la signature. progress représente la fonction de rappel de la progression du téléchargement.

À ce stade, le code Javascript pour implémenter la signature OSS est terminé. Vous pouvez utiliser le code ci-dessus pour télécharger des fichiers sur le service de stockage d'objets Alibaba Cloud OSS.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn