发送 email 过程

SMTP基本命令集:

命令       描述

——————————

HELO      向服务器标识用户身份发送者能欺骗,说谎,但一般情况下服务器都能检测到。

MAIL      初始化邮件传输

          mail form :

RCPT      标识单个的邮件接收人;常在MAIL命令后面  可有多个rcpt to:

DATA      在单个或多个RCPT命令后,表示所有的邮件接收人已标识,并初始化数据传输结束。

VRFY      用于验证指定的用户/邮箱是否存在;由于安全方面的原因,服务器常禁止此命令

EXPN      验证给定的邮箱列表是否存在,扩充邮箱列表,也常被禁用

HELP      查询服务器支持什么命令

NOOP      无操作,服务器应响应OK

QUIT      结束会话

RSET      重置会话,当前传输被取消

=============================================

创建SOCKET连接:操作成功完成。

服务器应答:220 126.com Anti-spam GT for Coremail System (126com[20090903])

客户机命令:EHLO HELO

服务器应答:250-mail 250-PIPELINING 250-AUTH LOGIN PLAIN 250-AUTH=LOGIN PLAIN 250-coremail 1Uxr2xKj7kG0xkI17xGrU7I0s8FY2U3Uj8Cz28x1UUUUU7Ic2I0Y2UFvIppzUCa0xDrUUUUj 250 8BITMIME

客户机命令:AUTH LOGIN

服务器应答:334 dXNlcm5hbWU6    //username:

客户机命令:dGVzdHVzZXI=

服务器应答:334 UGFzc3dvcmQ6    //Password:

客户机命令:dGVzdHVzZXI=

服务器应答:235 Authentication successful

客户机命令:MAIL FROM:

服务器应答:250 Mail OK

客户机命令:RCPT TO:

服务器应答:250 Mail OK

客户机命令:DATA

服务器应答:354 End data with .

客户机命令:From: To: Subject:test test.

服务器应答:250 Mail OK queued as smtp3,DcmowLB7Zwa0EgVMhkGGAA--.3344S2 1275400885

客户机命令:QUIT

服务器应答:221 Bye

发送 email 过程的更多相关文章

  1. IOS发送Email的两种方法

    IOS系统框架提供的两种发送Email的方法:openURL 和 MFMailComposeViewController.借助这两个方法,我们可以轻松的在应用里加入如用户反馈这类需要发送邮件的功能. ...

  2. java发送email

    package com.assess.util; import java.io.File; import java.util.ArrayList; import java.util.List; imp ...

  3. Spring 发送 Email

    本文转自:http://zl198751.iteye.com/blog/757617 看到了本文,收获颇丰,感谢之至! 首先介绍下Email的发送流程: 需要选中smtp邮件服务器,Yahoo不提供免 ...

  4. 使用PHP发送email进行账号激活或者密码修改操作

    使用PHPMailer编写发送邮件 PHPMailer需PHP的socket扩展支持,而PHPMailer链接qq域名邮箱时需要ssl加密方式(qq邮箱最近做了限制,新开域名邮箱不再允许通过smtp协 ...

  5. 使用python原生的方法实现发送email

    使用python原生的方法实现发送email import smtplib from email.mime.text import MIMEText from email.mime.multipart ...

  6. C#发送Email邮件(实例:QQ邮箱和Gmail邮箱)

    下面用到的邮件账号和密码都不是真实的,需要测试就换成自己的邮件账号. 需要引用: using System.Net.Mail; using System.Text; using System.Net; ...

  7. 【WinForm】C# 发送Email

    发送Email  的条件 1.SmtpClient SMTP 协议    即 Host 处理事务的主机或IP地址     //smtp.163.com      UseDefaultCredentia ...

  8. [转]C#发送Email邮件 (实例:QQ邮箱和Gmail邮箱)

    下面用到的邮件账号和密码都不是真实的,需要测试就换成自己的邮件账号. 需要引用:using System.Net.Mail;using System.Text;using System.Net; 程序 ...

  9. asp.net发送E-mail

    发送电子邮件也是项目开发当中经常用到的功能,这里我整理了一个发送电子邮件(带附件,支持多用户发送,主送.抄送)的类库,供大家参考. 先上两个实体类,用于封装成Mail对象. /// <summa ...

随机推荐

  1. Linux下清除系统日志方法

    摘要:相信大家都是用过Windows的人.对于Windows下饱受诟病的各种垃圾文件都需要自己想办法删除,不然你的系统将会变得越来越大,越来越迟钝!windows怎么清理垃圾相信大家都知道的,那么li ...

  2. spring mvc获取路径参数的几种方式

    一.从视图向controller传递值,  controller <--- 视图 1.通过@PathVariabl注解获取路径中传递参数 (参数会被复制到路径变量) @RequestMappin ...

  3. C++中全局变量的声明和定义

    原文链接:http://blog.csdn.net/candyliuxj/article/details/7853938 (1)编译单元(模块) 在VC或VS上编写完代码,点击编译按钮准备生成exe文 ...

  4. C# DevExpress GridControl使用方法

    一.如何解决单击记录整行选中的问题 View->OptionsBehavior->EditorShowMode 设置为:Click 二.如何新增一条记录 ().gridView.AddNe ...

  5. WebAssembly学习(四):AssemblyScript - 结构体系与内置函数

    一.结构体系 1.编译 编译器的结构相对保守. 提供源文件,其文本被标记化并解析为抽象语法树. 这里执行语法级检查. 一旦解析了所有引用的源文件,就构造一个程序并从AST初始化. 在这里进行合理性检查 ...

  6. 数据库更新DATE类型的时间

    使用to_date() 进行格式转换 to_date('2018/11/16','yyyy/MM/dd') update tableName t set t.shipment_date = to_da ...

  7. 一次失败的PHP扩展开发之旅

    一次失败的PHP扩展开发之旅 By warezhou 2014.11.19 缘起 经过不断的持续迭代.我们部门的协程版网络框架(CoSvrFrame)最终出炉了!这本来是件喜大普奔的事情.可是随着新业 ...

  8. es62

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  9. 洛谷P3531 [POI2012]LIT-Letters

    题目描述 Little Johnny has a very long surname. Yet he is not the only such person in his milieu. As it ...

  10. qgis显示引擎研究(一)

    作者:朱金灿 来源:http://blog.csdn.net/clever101 Qgis是一个著名的开源地理信息系统软件.今天研究了一下它的显示那一块,算是有一点眉目了. 在Windows环境下所有 ...