c网络应用高级编程第5章SMTP与POP3应用编程.ppt
上传人:qw****27 上传时间:2024-09-12 格式:PPT 页数:29 大小:299KB 金币:15 举报 版权申诉
预览加载中,请您耐心等待几秒...

c网络应用高级编程第5章SMTP与POP3应用编程.ppt

c网络应用高级编程第5章SMTP与POP3应用编程.ppt

预览

免费试读已结束,剩余 19 页请下载文档后查看

15 金币

下载此文档

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

第5章SMTP与POP3应用编程电子邮件是通过SMTP服务器进行发送的,SMTP是英文SimpleMailTransferProtocol的缩写,意为简单邮件传输协议,默认端口为25。使用SMTP协议发送邮件时,有两种形式:1)客户端可以使用匿名方式发送邮件,不使用客户端认证,这种方式即是一般的SMTP协议2)客户端必须提供用户名和密码,这种方式称为ESMTP协议,即ExtendedSMTP,或者叫扩展SMTP。3)ESMTP与SMTP的区别除了是否需要认证以外,其他均相同。为了避免或者减少垃圾邮件,目前大部分SMTP邮件服务器一般均采用用户名密码认证的方式。在SMTP协议中,电子邮件由三部分组成,信封、首部和正文。1)信封信封包括发信人的邮件地址和接收人的邮件地址,用两条SMTP命令指明。①MAILFROM:<发信人的地址>,告诉SMTP服务器发信人的地址。②RCPTTO:<收信人的地址>,告诉SMTP服务器收信人地址。5.1通过应用程序发送电子邮件(续)5.1通过应用程序发送电子邮件(续)5.1通过应用程序发送电子邮件(续)1)System.Net命名空间下的NetworkCredential类该类用于提供客户端身份验证机制的凭据。其中包括标准Internet身份验证方法(基本、简要、协商、NTLM和Kerberos身份验证)以及可以创建的自定义方法。在邮件发送中,我们需要使用这个类提供SMTP服务器需要的用户名和密码,用法为:NetworkCredentialmyCredentials=newNetworkCredential("发件人邮件地址","密码");5.1通过应用程序发送电子邮件(续)5.1通过应用程序发送电子邮件(续)5.1通过应用程序发送电子邮件(续)5.2利用同步TCP接收电子邮件1.POP3工作原理客户端软件读取邮件之前,需要事先与服务器建立TCP连接。连接成功后,POP3服务器会向该客户端发送确认消息,客户端等待服务器响应,并处理接收的信息,然后再接着发送下一个命令,如此往复多次,一直持续到连接终止。这个过程经历了三个状态:授权状态(AUTHORIZATION)、操作状态(TRANSACTION)和更新状态(UPDATE)。5.2利用同步TCP接收电子邮件(续)3.POP3协议工作的具体过程假设用C表示客户端(Client),S表示服务器端(Server)。1)授权状态客户端首先与POP3服务器建立TCP连接,服务器接收后发送一个单行的确认信息。此时POP3会话就进入了授权状态。在授权状态,客户需要向服务器发送用户名和密码进行确认,具体命令如下:5.2利用同步TCP接收电子邮件(续)5.2利用同步TCP接收电子邮件(续)5.2利用同步TCP接收电子邮件(续)5.2利用同步TCP接收电子邮件(续)5.2利用同步TCP接收电子邮件(续)5.2利用同步TCP接收电子邮件(续)5.2利用同步TCP接收电子邮件(续)5.2利用同步TCP接收电子邮件(续)5.2利用同步TCP接收电子邮件(续)