首页 > 其他分享 >.net core 利用qq发送邮件

.net core 利用qq发送邮件

时间:2022-09-06 15:12:05浏览次数:74  
标签:qq core client var new net com message

1、进入qq邮箱首页,点击设置

 

 

 2、点击 账户 选项卡 ,划到大概中间部分,有一个服务选项区。经实验开启前两个就可以了。

 

3、点击下方的 生成授权码,在开启服务之后会自动生成一次。这一步如果绑定了密保,会先进行一次身份验证。验证之后会发放一个授权码。这个授权码,在程序里会用到。

 

 

*******************************************************代码部分*******************************************************

public class EmailService : IEmailService
    {
        private readonly IConfiguration _configuration;
        public EmailService(IConfiguration configuration)
        {
            _configuration = configuration;
        }

        public async Task SendEmailAsync(MimeMessage message)
        {
            var host = "smtp.qq.com";
            var port = 465;
            var useSsl = true;
            var from_username = "*******@qq.com";
            // 授权码
            var from_password = "********";
            var from_name = "好医生";
            var from_address = "********@qq.com";

            var address = new List<MailboxAddress>
            {
                new MailboxAddress("123456","[email protected]"),
                new MailboxAddress("56789","[email protected]")
            };

            message.From.Add(new MailboxAddress(from_name, from_address));
            message.To.AddRange(address);

            using var client = new SmtpClient
            {
                ServerCertificateValidationCallback = (s, c, h, e) => true
            };
            client.AuthenticationMechanisms.Remove("XOAUTH2");

            await client.ConnectAsync(host, port, useSsl);
            await client.AuthenticateAsync(from_username, from_password);
            await client.SendAsync(message);
            await client.DisconnectAsync(true);
        }
    }

 

 调用

var message = new MimeMessage
            {
                Subject = "程序异常",
                Body = new BodyBuilder
                {
                    HtmlBody = msg
                }.ToMessageBody()
            };

            await _emailService.SendEmailAsync(message);
                

 

 

标签:qq,core,client,var,new,net,com,message
From: https://www.cnblogs.com/yxzs/p/16661870.html

相关文章

  • ASP.NET Core 01基础知识概述
    Program.cs使用Web模板创建的ASP.NETCore应用包含Program.cs文件中的应用程序启动代码。Program.cs文件中包含:已配置应用所需的服务。应用的请求处理管道定义......
  • Netty+WebSocket整合STOMP协议
    1.STOMP协议简介常用的WebSocket协议定义了两种传输信息类型:文本信息和二进制信息。类型虽然被确定,但是他们的传输体是没有规定的,也就是说传输体可以自定义成什么样的数据......
  • netlify跳转
    <!DOCTYPEhtml><head><title>RedirectingtoNetlify</title><script>letgitUrl=window.top.location.hash.replace("#","")if(gitUrl.endsWith("/"))g......
  • Asp.net中引入AspNetPager.dll进行数据分页
    1、在AspNetPager.dl开发者官网【AspNetPager下载(webdiyer.com)】进行下载,或者直接百度搜索下载2、右键单机选中自己项目,打开。3、点击打开bin文件4、将AspNetPage......
  • Asp.Net的各种传值方式
    1.QueryString是一种非常简单的传值方式,他可以将传送的值显示在浏览器的地址栏中。如果是传递一个或多个安全性要求不高或是结构简单的数值时,可以使用这个方法。但是对于传......
  • Linux 安装telnet
    一、安装telnet1、首先我们检测telnet-server的rpm包是否安装[root@localhost~]#rpm-qatelnet-server若无输入内容,则表示没有安装。linux的telnet-server.rpm默认......
  • NET5配合vue3图片上传
    NET5配合vue3图片上传后端函数///<summary>///上传文件///</summary>///<paramname="files">文件流</param>///<ret......
  • ASP.NET Core 6框架揭秘实例演示[35]:利用Session保留语境
    客户端和服务器基于HTTP的消息交换就好比两个完全没有记忆能力的人在交流,每次单一的HTTP事务体现为一次“一问一答”的对话。单一的对话毫无意义,在在同一语境下针对某个主......
  • C#/.NET/.NET Core优秀项目框架推荐
    前言:为.NET开源者提供的一个推荐自己优秀框架的地址,大家可以把自己的一些优秀的框架,或者项目链接地址存到在这里,提供给广大.NET开发者们学习(排名不分先后)。Github项......
  • 【ARXIV2207】HorNet: Efficient High-Order Spatial Interactions with Recursive Ga
    【ARXIV2207】HorNet:EfficientHigh-OrderSpatialInteractionswithRecursiveGatedConvolutions论文地址:https://hornet.ivg-research.xyz代码地址:https://githu......