Как исправить ошибку HTTP 401: неавторизован при отправке электронной почты с использованием sendgrid? - PullRequest
0 голосов
/ 12 июня 2019

Я хочу написать приложение, которое отправляет электронные письма пользователям при использовании sendgrid. Я перешел на sendgrid и выполнил все инструкции, включая установку sendgrid и настройку переменной среды.

Я попытался поместить переменную средыв пути, но все еще показывает ошибку

я также пытался вставить его в код, но все равно не удается с той же ошибкой

это мой код send-mail.py:

import os
from sendgrid import SendGridAPIClient
from sendgrid.helpers.mail import Mail

message = Mail(
    from_email='from_email@example.com',
    to_emails='to@example.com',
    subject='Sending with Twilio SendGrid is Fun',
    html_content='<strong>and easy to do anywhere, even with 
Python</strong>')
try:
    sg = SendGridAPIClient(os.environ.get('SG.97- 
 h52MJSXK4C7_FIl5yzw.q3GsOa4P_AO1pKvUcOzQg6XzuRXEY3mzD-Ci5eN2I2E'))
    response = sg.send(message)
    print(response.status_code)
    print(response.body)
    print(response.headers)
except Exception as e:
    print(e
    )

Я создал папку с именем Mail и создал файл с именем send_mail.py

Я ожидаю отправить электронное письмо, но он выдает ошибку HTTP 401: Unauthorized

1 Ответ

0 голосов
/ 12 июня 2019

Вы пытаетесь получить переменную среды, имя которой является ключом API. Скорее всего, это возвращает None, что делает вашу аутентификацию неудачной. Возможно, вы также захотите восстановить смысл ключа API, который вы сейчас раскрыли в Интернете.

Попробуйте заменить SendGridAPIClient(os.environ.get('SG.97- h52MJSXK4C7_FIl5yzw.q3GsOa4P_AO1pKvUcOzQg6XzuRXEY3mzD-Ci5eN2I2E')) на SendGridAPIClient('SG.97- h52MJSXK4C7_FIl5yzw.q3GsOa4P_AO1pKvUcOzQg6XzuRXEY3mzD-Ci5eN2I2E').

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...