Dans mon dernier projet personnel, j'avais besoin de stocker une clé API en toute sécurité. La manière la plus recommandée de procéder semble être de les stocker en tant que variables d'environnement. Étant donné que stocker une multitude de variables d'environnement provenant de différents projets sur ma machine est un problème, j'ai trouvé une alternative simple pour gérer cette situation.
La solution consiste à utiliser le module python-dotenv, qui prend en charge notre code pour utiliser des variables stockées dans un fichier .env séparé comme s'il s'agissait de variables d'environnement normales.
Le processus est très simple...
Tout d'abord on crée un fichier .env dans lequel on stocke les variables :
# Definimos las variables en el archivo .env VARIABLE1 = "Valor 1" VARIABLE2 = "Valor 2"
Ce fichier peut être créé soit dans le dossier racine, soit à un autre emplacement de notre projet.
Nous importons le module dotenv, et plus particulièrement la fonction load_dotenv dans notre projet. Il faudra également importer le module os pour importer les variables d'environnement une fois le contenu du .env chargé :
from dotenv import load_dotenv import os
Comme il ne s'agit pas d'un module Python natif, il nécessite d'être installé via Pip, avec la commande pip install python-dotenv.
La fonction load_dotenv() charge les variables dans le programme en tant que variables d'environnement. Grâce au module, nous pouvons récupérer leurs valeurs et les affecter à des variables au sein du projet :
# Cargamos las variables del archivo como variables de entorno. load_dotenv() # Se almacena el valor "Valor 1" de la primera variable. VARIABLE1 = os.getenv("VARIABLE1") # Otra forma de recuperar el valor de la variable. VARIABLE2 = os.environ.get("VARIABLE2")
Si le fichier .env ne se trouve pas dans le même chemin où le code est exécuté, il faut définir l'emplacement du fichier :
load_dontenv(path="ruta/.env")
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!