1.6.1 Support Menggunakan Flask Mail - dvrg/flask-web-development GitHub Wiki
Paket smtplib dari python library bisa digunakan untuk mengirim email menggunakan aplikasi flask, paket smtplib dibungkus dalam extensi flask-mail
dan terintegrasi dengan baik dalam flask.
(env) $ pip install flask-mail
flask-mail
terhubung ke server Simple Mail Transfer Protocol (SMTP) dan mengirim email kepada penerima. Nah, jika kamu tidak mengkonfigurasi flask-mail terhubung ke localhost dan otomatis portnya 25 tanpa otentikasi.
Flask-Mail SMTP Configuration Keys
Key | Default | Description |
---|---|---|
MAIL_SERVER |
localhost | Hostname or IP address |
MAIL_PORT |
25 | Port email server |
MAIL_USE_SSL |
False | Enable TLS security |
MAIL_USE_TLS |
False | Enable SSL security |
MAIL_USERNAME |
None | Username email |
MAIL_PASSWORD |
None | Password email |
Cara menggunakannya, tuliskan pada app.py:
# app.py: konfigurasi email
...
import os
...
app.config['MAIL_SERVER'] = 'smtp.gmail.com'
app.config['MAIL_PORT'] = 587
app.config['MAIL_USE_TLS'] = True
app.config['MAIL_USERNAME'] = os.environ.get('MAIL_USERNAME')
app.config['MAIL_PASSWORD'] = os.environ.get('MAIL_PASSWORD')
dan lakukan juga inisialisasi flask-mail pada app.py:
# app.py: inisialisasi flask-mail
...
from flask_mail import Mail
...
mail = Mail(app)
...
Dua variabel untuk email username dan email password perlu diexport melalui environment. Linux or MacOS:
(env) $ export MAIL_USERNAME='gmail username'
(env) $ export MAIL_PASSWORD='gmail password'
Windows:
(env) $ set MAIL_USERNAME='gmail username'
(env) $ set MAIL_PASSWORD='gmail password'
tapi, sebelum kamu menggunakan email kamu untuk mengirim email. Enable less secure gmail kamu dengan masuk ke link https://myaccount.google.com/lesssecureapps.