Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 使用Django通过gmail发送电子邮件时ConnectionRefusedError_Python_Django_Django Rest Framework_Email - Fatal编程技术网

Python 使用Django通过gmail发送电子邮件时ConnectionRefusedError

Python 使用Django通过gmail发送电子邮件时ConnectionRefusedError,python,django,django-rest-framework,email,Python,Django,Django Rest Framework,Email,我正试图通过我的Gmail帐户为我的Django应用程序发送电子邮件。我在settings.py文件中使用以下配置 EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' EMAIL_HOST_USER = 'username@gmail.com' EMAIL_HOST = 'smtp.gmail.com' # tried smtp-relay.gmail.com also EMAIL_PORT = '587' EMAIL_US

我正试图通过我的Gmail帐户为我的Django应用程序发送电子邮件。我在settings.py文件中使用以下配置

EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST_USER = 'username@gmail.com'
EMAIL_HOST = 'smtp.gmail.com' # tried smtp-relay.gmail.com also
EMAIL_PORT = '587'
EMAIL_USE_TLS = True
EMAIL_HOST_PASSWORD = 'Gmail password / app password' 
这方面的进口声明:

from django.core.mail import send_mail, EmailMessage
from django.conf import settings
以下是我的视图功能:

    message = EmailMessage(subject=email_subject, body=email_message, from_email=settings.EMAIL_HOST_USER,  to=[email, 'username@gmail.com'])
    message.send(fail_silently=False)
我也试过:

send_mail(email_subject, email_message , settings.EMAIL_HOST_USER, [email, 'username@gmail.com'] , fail_silently=False, )
非常感谢您的帮助。请注意,我已尝试:

  • 在Gmail中启用不太安全的应用程序按钮
  • 然后,我禁用了不太安全的应用程序,启用了双因素身份验证,并使用谷歌的应用程序密码选项
  • 以下是完整的回溯:

        Traceback (most recent call last):
      File "/Users/jatinsinghbhati/Documents/workspaces/djangoenv/lib/python3.9/site-packages/django/core/handlers/exception.py", line 47, in inner
        response = get_response(request)
      File "/Users/jatinsinghbhati/Documents/workspaces/djangoenv/lib/python3.9/site-packages/django/core/handlers/base.py", line 181, in _get_response
        response = wrapped_callback(request, *callback_args, **callback_kwargs)
      File "/Users/jatinsinghbhati/Documents/workspaces/pollsite/signup/views.py", line 40, in index
        message.send(fail_silently=False)
      File "/Users/jatinsinghbhati/Documents/workspaces/djangoenv/lib/python3.9/site-packages/django/core/mail/message.py", line 284, in send
        return self.get_connection(fail_silently).send_messages([self])
      File "/Users/jatinsinghbhati/Documents/workspaces/djangoenv/lib/python3.9/site-packages/django/core/mail/backends/smtp.py", line 102, in send_messages
        new_conn_created = self.open()
      File "/Users/jatinsinghbhati/Documents/workspaces/djangoenv/lib/python3.9/site-packages/django/core/mail/backends/smtp.py", line 62, in open
        self.connection = self.connection_class(self.host, self.port, **connection_params)
      File "/Users/jatinsinghbhati/.pyenv/versions/3.9.0/lib/python3.9/smtplib.py", line 253, in __init__
        (code, msg) = self.connect(host, port)
      File "/Users/jatinsinghbhati/.pyenv/versions/3.9.0/lib/python3.9/smtplib.py", line 339, in connect
        self.sock = self._get_socket(host, port, self.timeout)
      File "/Users/jatinsinghbhati/.pyenv/versions/3.9.0/lib/python3.9/smtplib.py", line 310, in _get_socket
        return socket.create_connection((host, port), timeout,
      File "/Users/jatinsinghbhati/.pyenv/versions/3.9.0/lib/python3.9/socket.py", line 843, in create_connection
        raise err
      File "/Users/jatinsinghbhati/.pyenv/versions/3.9.0/lib/python3.9/socket.py", line 831, in create_connection
        sock.connect(sa)
    ConnectionRefusedError: [Errno 61] Connection refused
    [25/Feb/2021 19:38:20] "POST /signup/ HTTP/1.1" 500 101708
    
    应该是

    电子邮件端口=587

    但不是

    电子邮件端口='587'


    端口号是整数而不是字符串。

    能否共享完整的错误跟踪?请将此smtp-relay.gmail.com回溯到smtp.gmail.com您的
    电子邮件\u主机\u密码设置看起来很奇怪,您确定密码正确吗?此外,您是否已检查您的电子邮件gmail设置中是否已检查“从不太安全的应用程序启用访问”设置?@c.grey我已将回溯添加到问题描述中。我也尝试过smtp.gmail.com,但运气不好。@还启用了SLDem不太安全的应用程序。我在问题中使用了一个伪密码,在应用程序中我使用了正确的密码。我也尝试了EMAIL_PORT=587,但没有成功。我也遇到了这种问题。在我的案例中,我创建了一个新的gmail帐户,因为访问两个级别的安全性被激活,这也带来了一些问题。我也可以建议你触及这个问题,首先,试着不看任何东西,只看Django本地人的生活来找出问题。好的,如果我离开Gmail,选择hotmail、live等,你能帮助我了解其他电子邮件提供商的配置吗?在我的情况下,我只使用Gmail,我不知道为什么,但我觉得它对我有用。按照我的建议,创建一个新的gmail计数只是为了测试,我会尝试从YouTube上给你发送一个帮助我的视频。谢谢你的视频。它帮助我设置身份验证。按照你的建议,我创建了一个新的Gmail帐户进行测试,但仍然会出现同样的错误。