Menambahkan Environment Variable di FastApi
FastApi adalah salah satu framework web yang populer yang digunakan untuk membuat API backend menggunakan bahasa pemrograman Python. Di dalam pembuatan API backend, seringkali kita perlu menambahkan environment variable untuk menyimpan informasi sensitif seperti credential database, URL API, secret key, dan lain sebagainya. Dalam tutorial ini, kita akan belajar bagaimana menambahkan environment variable di FastApi.
Langkah 1: Membuat file .env
Langkah pertama yang perlu dilakukan adalah membuat file .env di root project FastApi kita. File .env ini akan digunakan untuk menyimpan environment variable yang akan digunakan dalam aplikasi. Contoh isi dari file .env:
DB_USERNAME=myusername
DB_PASSWORD=mypassword
DB_HOST=localhost
DB_PORT=5432
SECRET_KEY=mysecretkey
Langkah 2: Menggunakan python-dotenv
Untuk bisa mengakses environment variable yang ada di file .env, kita perlu menggunakan library python-dotenv. Anda dapat menginstal library ini dengan menggunakan pip:
pip install python-dotenv
Setelah itu, import library python-dotenv di file main FastApi anda:
from dotenv import load_dotenv
Langkah 3: Load Environment Variable
Agar environment variable dari file .env dapat di-load, tambahkan kode berikut sebelum inisialisasi aplikasi FastApi:
load_dotenv()
Setelah kode di atas dijalankan, Anda dapat menggunakan environment variable yang ada di file .env dengan mudah. Contoh:
import os
db_username = os.getenv(“DB_USERNAME”)
db_password = os.getenv(“DB_PASSWORD”)
db_host = os.getenv(“DB_HOST”)
db_port = os.getenv(“DB_PORT”)
secret_key = os.getenv(“SECRET_KEY”)
Langkah 4: Menggunakan Environment Variable
Setelah environment variable berhasil di-load, Anda dapat menggunakannya di berbagai bagian aplikasi FastApi, misalnya untuk koneksi database, pembuatan JWT token, dan sebagainya. Contoh penerapan environment variable untuk koneksi database:
from fastapi import FastAPI
from sqlalchemy import create_engine
app = FastAPI()
# Create database connection
database_url = f”postgresql://{db_username}:{db_password}@{db_host}:{db_port}/mydatabase”
engine = create_engine(database_url)
Dengan menambahkan environment variable di FastApi, Anda dapat memisahkan konfigurasi aplikasi dari kode program utama, sehingga aplikasi dapat lebih mudah di-maintain dan lebih aman. Semoga tutorial ini bermanfaat bagi Anda dalam pengembangan aplikasi FastApi.