本文目录一览:
- 1、pop3协议是指什么?
- 2、c++语言pop3协议得到的邮件内容怎么解析
- 3、POP3什么是服务?
- 4、POP3是什么协议
- 5、POP3/SMTP 是什么?
- 6、请问学习C语言哪些方面的内容可以编写最简易的收发邮件的客户端(smtp/pop3协议)
pop3协议是指什么?
POP3是邮局协议版本3。是TCP/IP协议族中的一员,由RFC1939定义。本协议主要用于支持使用客户端远程管理在服务器上的电子邮件。提供了SSL加密的POP3协议被称为POP3S。
POP协议支持“离线”邮件处理。其具体过程是:邮件发送到服务器上,电子邮件客户端调用邮件客户机程序以连接服务器,并下载所有未阅读的电子邮件。
POP3适用范围
POP适用于C/S结构的脱机模型的电子邮件协议,已发展到第三版,称POP3。脱机模型即不能在线操作,POP不支持对服务器邮件进行扩展操作,此过程需要更高级的IMAP4协议来完成。支持POP协议使用ASCII码来传输数据消息,这些数据消息可以是指令,也可以是应答。
c++语言pop3协议得到的邮件内容怎么解析
邮件内容协议分成很多个段落
首先是日期 Date: RFC 5322 日期格式
然后是收件人发件人段,“To:” 和 "From",以及抄送 "Cc:“ 和 "Bcc“
随后是“Message-ID: “,用于服务器在消息流通中不至于重复发送和存储,识别邮件的唯一性。
最后一段比较关键,格式类似于这样:
MIME-Version: 1.0\r\nContent-type: multipart/alternative; boundary=\"\(boundary)\"\r\n\r\n
意思是表示邮件采用MIME内容编码,可以是多个组成部分,由边界线boundary划分为多个数据区。数据区之间的内容可以是html或者普通文本(参考下列代码)关键是所有文本内容都是用 base64编码重新编排过,所以要用decode_base64解开才能读取。
f !text.isEmpty {
body += "--\(boundary)\r\nContent-Type: text/plain; charset=UTF-8; format=flowed\r\n\r\n\(text)\r\n\r\n"
}
if !content.isEmpty {
body += "--\(boundary)\r\nContent-Type: text/html;charset=UTF-8\r\n\r\n\(content)\r\n\r\n"
}
直接去解析是比较费劲的,因为其实整个编码都是采用了http传输协议的 mime 方式。建议用现成的开源代码去读去,比如CHTTPParser,速度快,效率高,都已经通过几十年检验了的成熟代码。
POP3什么是服务?
POP3服务器是遵循POP3协议的接收邮件服务器,用来接收电子邮件的。
POP3是Post Office Protocol 3的简称,即邮局协议的第3个版本,它规定怎样将个人计算机连接到Internet的邮件服务器和下载电子邮件的电子协议。
它是因特网电子邮件的第一个离线协议标准,POP3允许用户从服务器上把邮件存储到本地主机上,同时删除保存在邮件服务器上的邮件。
工作原理
当客户机与服务器建立连接时,客户机向服务器发送自己身份并由服务器成功确认,即客户端由认可状态转入处理状态,在完成列出未读邮件等相应的操作后客户端发出quit命令,退出处理状态进入更新状态,开始下载未阅读过的邮件到计算机本地之后最后重返认证状态确认身份后断开与服务器的连接。
由于任何邮件的删除都必须在quit命令发出后对已标记为删除的邮件执行删除操作,如果在邮件接收过程中发生断线,交互仍处于处理状态,没有机会执行quit命令以进行更新状态。
因此,若客户在收取邮件时,假定为15封信等待接收,但由于线路问题,收到第10封时断线了,那么这前10封信仍然存储在服务器上,此时,本地的邮件和服务器邮件重复,而且在下次收时仍然从第一封开始。
以上内容参考 百度百科--POP3服务
POP3是什么协议
POP3,全名为“Post
Office
Protocol
-
Version
3”,即“邮局协议版本3”。是TCP/IP协议族中的一员,由RFC1939
定义。本协议主要用于支持使用客户端远程管理在服务器上的电子邮件。提供了SSL加密的POP3协议被称为POP3S。
POP
协议支持“离线”邮件处理。其具体过程是:邮件发送到服务器上,电子邮件客户端调用邮件客户机程序以连接服务器,并下载所有未阅读的电子邮件。这种离线访问模式是一种存储转发服务,将邮件从邮件服务器端送到个人终端机器上,一般是PC机或
MAC。
一旦邮件发送到
PC
机或MAC上,邮件服务器上的邮件将会被删除。但目前的POP3邮件服务器大都可以“只下载邮件,服务器端并不删除”,也就是改进的POP3协议。
扩展资料:
适用范围
POP适用于C/S结构的脱机模型的电子邮件协议,目前已发展到第三版,称POP3。脱机模型即不能在线操作,POP不支持对服务器邮件进行扩展操作,此过程需要更高级的IMAP4协议来完成。支持POP协议使用ASCII码来传输数据消息,这些数据消息可以是指令,也可以是应答。
协议支持离线邮件处理,当邮件发送到服务器后,电子邮件客户端会调用邮件客户端程序,下载所有未阅读的电子邮件(这种离线访问模式是一种存储转发服务)。
当邮件从邮件服务器发送到个人计算机上,同时邮件服务器会删除该邮件(但是目前很多POP3服务器都支持“下载邮件,服务器并不删除邮件”,也就是说在POP3中改进了POP协议)。
参考资料来源:百度百科-POP3
POP3/SMTP 是什么?
POP3 ---接收
POP3是PostOfficeProtocol3的简称,即邮局协议的第3个版本,它规定怎样将个人计算机连接到Internet的邮件服务器和下载电子邮件的电子协议。
它是因特网电子邮件的第一个离线协议标准,POP3允许用户从服务器上把邮件存储到本地主机(即自己的计算机)上,同时删除保存在邮件服务器上的邮件,而POP3服务器则是遵循POP3协议的接收邮件服务器,用来接收电子邮件的。
SMTP ---发送
SMTP 的全称是“SimpleMailTransferProtocol”,即简单邮件传输协议。它是一组用于从源地址到目的地址传输邮件的规范,通过它来控制邮件的中转方式。
SMTP协议属于TCP/IP协议簇,它帮助每台计算机在发送或中转信件时找到下一个目的地。SMTP服务器就是遵循SMTP协议的发送邮件服务器。
/iknow-pic.cdn.bcebos.com/f2deb48f8c5494ee1831a4f723f5e0fe98257ec9"target="_blank"title="点击查看大图"class="ikqb_img_alink"/iknow-pic.cdn.bcebos.com/f2deb48f8c5494ee1831a4f723f5e0fe98257ec9?x-bce-process=image%2Fresize%2Cm_lfit%2Cw_600%2Ch_800%2Climit_1%2Fquality%2Cq_85%2Fformat%2Cf_auto"esrc=""/
扩展资料:
IMAP和POP3的区别:
POP3协议允许电子邮件客户端下载服务器上的邮件,但是在客户端的操作(如移动邮件、标记已读等),不会反馈到服务器上,比如通过客户端收取了邮箱中的3封邮件并移动到其他文件夹,邮箱服务器上的这些邮件是没有同时被移动的。
而IMAP提供webmail与电子邮件客户端之间的双向通信,客户端的操作都会反馈到服务器上,对邮件进行的操作,服务器上的邮件也会做相应的动作。
同时,IMAP像POP3那样提供了方便的邮件下载服务,让用户能进行离线阅读。IMAP提供的摘要浏览功能可以让你在阅读完所有的邮件到达时间、主题、发件人、大小等信息后才作出是否下载的决定。此外,IMAP 更好地支持了从多个不同设备中随时访问新邮件。
请问学习C语言哪些方面的内容可以编写最简易的收发邮件的客户端(smtp/pop3协议)
学习网络通讯协议 ,还有一些基础的编程知识,socket通讯 ,了解协议的初始化,