Comment définir les paramètres CORS pour le service de stockage Azure dans Python

Mon entreprise Kakadu utilise Python + Django + Azure comme environnement de développement.

Je pense que de nombreuses entreprises utilisent AWS comme environnement cloud, mais Azure fournit également la bibliothèque Python en tant que SDK. Je l'aime parce que c'est facile à utiliser.

L'autre jour, j'ai commencé à utiliser le stockage Azure, une fonction équivalente à S3 dans AWS, et j'ai commencé à servir des fichiers statiques à partir du stockage Azure, mais j'ai défini Azure CORS (Cross Origin Resource Sharing) en Python. Je n'avais aucun matériel sur le net sur la façon de le faire, je vais donc garder une trace de ma réponse.

Voir cet article pour CORS

from azure.storage.models import StorageServiceProperties
from azure.storage.blob import BlobService
from azure.storage.blob.models import WindowsAzureData

class Cors(WindowsAzureData):
    pass

class CorsRule(WindowsAzureData):
    pass

rule = CorsRule()
rule.allowed_origins = '*'
rule.allowed_methods = 'GET,PUT'
rule.max_age_in_seconds = 500
rule.exposed_headers = 'x-ms-meta-data*,x-ms-meta-customheader'
rule.allowed_headers = 'x-ms-meta-data*,x-ms-meta-customheader'

cors = Cors()
cors.corsrule = rule

prop = StorageServiceProperties()
prop.cors = cors
prop.default_service_version = '2013-08-15'

client = BlobService(
    account_name='nom du compte',
    account_key='Clé'
)
client.set_blob_service_properties(prop)

C'est une solution de contournement que j'ai trouvée en lisant l'implémentation du SDK, mais si quelqu'un sait comment la rendre plus facile, j'apprécierais que vous puissiez commenter!

Recommended Posts

Comment définir les paramètres CORS pour le service de stockage Azure dans Python
Comment spécifier Cache-Control pour le stockage BLOB dans le stockage Azure en Python
[Pour les débutants] Comment utiliser la commande say avec python!
Comment exécuter python dans l'espace virtuel (pour MacOS)
Comment développer en Python
Comment définir plusieurs variables dans une instruction Python for
Comment implémenter Python EXE pour Windows avec le conteneur Docker
[Python] Comment faire PCA avec Python
Comment collecter des images en Python
Comment utiliser SQLite en Python
Comment utiliser Mysql avec python
Comment envelopper C en Python
Comment utiliser ChemSpider en Python
Comment utiliser PubChem avec Python
Comment gérer le japonais avec Python
Téléchargement de fichiers vers Azure Storage (Python)
Comment modifier le niveau de journalisation d'Azure SDK pour Python
[GCP] Comment publier une URL signée Cloud Storage (URL temporaire) en Python
[Introduction à Python] Comment utiliser l'opérateur in dans l'instruction for?
[Introduction à Python] Comment utiliser la classe en Python?
Comment définir dynamiquement des variables en Python
Comment faire R chartr () en Python
[Itertools.permutations] Comment créer une séquence en Python
Comment utiliser BigQuery en Python
Comment obtenir stacktrace en python
Comment afficher la table quatre-vingt-dix-neuf en python
Comment extraire une zone de polygone en Python
[Python] Organisation de l'utilisation des instructions
Comment vérifier la version d'opencv avec python
Comment changer de version de Python dans cloud9
Comment régler le contraste de l'image en Python
Comment utiliser __slots__ dans la classe Python
Comment remplir dynamiquement des zéros avec Python
Comment utiliser "deque" pour les données Python
Comment utiliser les expressions régulières en Python
Comment afficher Hello World en python
Comment utiliser is et == en Python
Comment écrire Ruby to_s en Python
Comment utiliser la bibliothèque C en Python
Comment recevoir des arguments de ligne de commande en Python
[REAPER] Comment jouer à Reascript avec Python
Comment effacer un taple dans une liste (Python)
Comment générer une séquence en Python et C ++
Paramètres de téléchargement de packages Python localement vers PyPI
Résumé de la façon d'importer des fichiers dans Python 3
Comment simplifier l'ajustement polymorphe restreint en python
Comment utiliser la bibliothèque d'images Python dans la série python3
Comment implémenter la mémoire partagée en Python (mmap.mmap)
Comment créer un fichier JSON en Python
Comment installer Python pour les chercheurs de sociétés pharmaceutiques
Résumé de l'utilisation de MNIST avec Python
Paramètres de journalisation pour la rotation quotidienne des journaux avec python
Comment spécifier la version TLS dans les requêtes python
Comment transmettre les paramètres au pipeline d'articles dans Scrapy
Essayez de calculer RPN avec Python (pour les débutants)
Comment notifier les canaux Discord en Python
Comment obtenir les fichiers dans le dossier [Python]
Comment utiliser tkinter avec python dans pyenv