简介
当初自己写邮件的时候碰到了很多问题,因为之前就没怎么接触过,而且关于mailcore2的资料在网上也很少很少,所以很多情况都是自己测试出来的,当然还有很多没有用到,希望以后有人能有个补充。
电子邮件协议的介绍
电子邮件协议分为这三种SMTP协议、POP协议、IMAP协议。后两者是收件协议,第一者是发件协议。接下来详细讲讲在mailcore2中用到的这三种协议。
POP协议
pop没有文件夹之分,就一个INBOX收件箱,首先你得验证你的账户是否正确:首先你得初始化一个MCOPOPSession,hostname就是你输入的服务器,port是端口号,当然加密和不加密时候得端口号是不一样,username就是你的邮箱账户,password就是邮箱密码connectionType是连接类型,有些邮箱需要验证证书isCheckCertificateEnabled就是决定你是否需要验证,当验证成功的时候需要把operation 设置为nil
var pop3Session = MCOPOPSession() pop3Session.hostname = hostname pop3Session.port = port pop3Session.username = username pop3Session.password = password pop3Session.connectionType = .TLS pop3Session.isCheckCertificateEnabled = false var op = pop3Session.checkAccountOperation() op?.start({ (error) in if error == nil { print("pop3验证成功") op = nil }else{ print("pop3验证失败") } })
接下来是获取邮件头
var op = self.pop3Session.fetchMessagesOperation()
op?.start({ (error, messages) in
if error == nil {
//messages里包含着MCOPOPMessageInfo集合 通过它可以获取里面的详细内容
op = nil
}
})
//现在就取一封邮件,因为它返回的时候是把最新的一封放在最后,所以当你想取最新的一封时候就需要messages[messages.count - 1]
pop是通过它的index去取邮件详情