zoukankan      html  css  js  c++  java
  • Django学习之 邮件发送功能

    一.发送邮箱开启SMTP服务

    1.QQ邮箱

    进入邮箱设置-->账户--->找到SMTP相关--->点击开启--->根据提示发送短信

    2.163邮箱

    进入邮箱设置---->找到SMTP相关--->点击开启--->根据提示发送短信

    二.Django初始配置邮箱设置

    Django项目中的setting.py下配置邮件需要的相关参数:

    # 邮件相关配置
    EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
    EMAIL_USE_SSL = True
    # EMAIL_USE_TLS = False
    EMAIL_HOST = 'smtp.163.com'  # 如果是 163 改成 smtp.163.com
    EMAIL_PORT = 465    # flase 就用25
    EMAIL_HOST_USER = 'xxxxx@163.com'  # 邮箱帐号
    EMAIL_HOST_PASSWORD = 'hsz12345'  # 密码,授权码
    DEFAULT_FROM_EMAIL = EMAIL_HOST_USER  # 邮箱用户名,同EMAIL_HOST_USER

    三.视图与路由邮箱发送demo

    1.路由配置

    from .views import SendMail
    
    urlpatterns = [
    path(r'send_mail/', SendMail.as_view()),  # 发送邮件
    ]

    2.view视图函数

    from django.conf import settings
    from django.core.mail import send_mail
    
    class SendMail(APIView):
        def get(self, request, *args, **kwargs):
            messages = '尊敬的XXX,这个是消息内容'
            send_mail(subject='邮箱标题',
                      message=messages, from_email='xxxx@163.com',           # xxxx@163.com 为发送人的邮箱
                      recipient_list=['xxxx@qq.com'], fail_silently=False)   # xxxx@qq.com 为要接收邮件的邮箱
            return Response(status=status.HTTP_200_OK,
                            data={'code': 0, 'data': '', 'msg': '邮件发送成功'})

    3.测试url

    测试的url:http://127.0.0.1:8000/send_mail/

  • 相关阅读:
    mysql5.7 tar包安装
    jpa2.0以上findOne和getOne的区别
    终端设置代理
    virtualbox EFI安装Archlinux
    无法在web.xml或使用此应用程序部署的jar文件中解析绝对uri:[http://java.sun.com/jsp/jstl/core]
    代理模式笔记
    Mybatis详细的执行流程
    javaweb超市管理系统demo
    CF1409F Subsequences of Length Two
    1002: [FJOI2007]轮状病毒 基尔霍夫矩阵
  • 原文地址:https://www.cnblogs.com/hszstudypy/p/12384766.html
Copyright © 2011-2022 走看看