"System.Net.Mail.SmtpClient"需要将"SmtpClient.EnableSsl"设置为true的端口是什么?

Jon*_*age 2 port smtpclient

正如标题所说,"System :: Net :: Mail :: SmtpClient"需要将'SmtpClient :: EnableSsl'设置为true的端口是什么?

上的文档EnableSsl属性说的替代连接方法的默认端口是465,但没有提到什么它所使用的连接类型支持.

编辑 - 如果它有所不同,我在这个例子中连接到Gmail,但欢迎通用答案.

Nic*_*set 7

要使用System :: Net :: Mail :: SmtpClient和SSL将邮件发送到Gmail,您必须使用端口587,如GMail API中所述.

端口25和587在GMail上都可用,但端口587在发送邮件之前需要SMTP身份验证,而端口25则不需要.鉴于端口25不需要发送者身份验证,GMail将更加积极地过滤来自不适当邮件服务器的ip地址的连接,以减少垃圾邮件.

GMail的API也允许使用端口465,但你不能与系统::网::邮件:: SmtpClient使用它,通过Microsoft的说明.端口465用于SMTP over SSL:首先建立SSL连接,然后执行SMTP事务.使用端口25和587,在使用STARTTLS切换到SSL 并完成SMTP事务之前,首先打开未加密的SMTP会话.后者是.Net SMTP客户端实现的方法.