Я пытался настроить облачные функции для отправки писем всякий раз, когда файл помещается в одно из наших облачных хранилищ в GCP, без использования сторонних инструментов. Я ознакомился с приведенными здесь понятиями и убедился, что электронная почта моего отправителя уже зарегистрирована как авторизованный отправитель.
https://cloud.google.com/appengine/docs/standard/python/mail/sending-mail-with-mail-api
requirements.txt
с добавленными ниже значениями:
google-cloud-storage==1.23.0
googleapis-common-protos==1.3.5
google-api-python-client
в файле требований. Но все равно получаю ту же ошибку.
Однако, когда я пытался использовать приведенные ниже сценарии, и это заканчивалось этой ошибкой:
ModuleNotFoundError: No module named 'google.appengine' .
Оценить Ваши предложения и помощь заранее.
from google.appengine.api import app_identity
from google.appengine.api import mail
import webapp2
def send_approved_mail(sender_address):
# [START send_mail]
mail.send_mail(sender=sender_address,
to="Albert Johnson <Albert.Johnson@example.com>",
subject="Your account has been approved",
body="""Dear Albert:
Your example.com account has been approved. You can now visit
http://www.example.com/ and sign in using your Google Account to
access new features.
Please let us know if you have any questions.
The example.com Team
""")
# [END send_mail]
class SendMailHandler(webapp2.RequestHandler):
def get(self):
send_approved_mail('{}@appspot.gserviceaccount.com'.format(
app_identity.get_application_id()))
self.response.content_type = 'text/plain'
self.response.write('Sent an email to Albert.')
app = webapp2.WSGIApplication([
('/send_mail', SendMailHandler),
], debug=True)