利用javamail收取Hotmail的退信

zav周周

zav周周

2016-02-19 13:46

下面图老师小编跟大家分享利用javamail收取Hotmail的退信,一起来学习下过程究竟如何进行吧!喜欢就赶紧收藏起来哦~
Hotmail 是我最常用的Email Client。虽然时下hotmail的容量是小了些,速度也经常慢得让人不禁问候盖茨的母亲。但不可否认,它功能相当丰富,也比较稳定。尤其它的页面设计更是我等web编程人员的重要参照。
  
   !-- frame contents -- !-- /frame contents --   不象很多的POP3服务器,hotmail 实现了邮件传送状态通知(multipart/report)。我以前写的邮件客户端只支持收取 multipart/related、multipart/alternative和multipart/mixed 等多媒体类型的邮件,其他的因为不常见,我都忽略了。
  
    客户不答应了,那还有什么好说的,还有什么比让客户满足更重要的事情呢,在没买单之前。
  
    multipart/report 邮件类型的介绍参见 RFC1892,Sun的中文 Javamail Faq 里也有相关的说明,我摘录如下:
  
    问. 当消息不能被传送时,就会返回一个失败消息。我如何检测这些“回弹”消息?
  
    答:虽然有一个 Internet 标准用于报告这样的错误(multipart/report MIME 类型,参阅 RFC1892),但还没有广泛实现它。RFC1211 深入讨论了这个问题,包括了大量的例子。
  
    在 Internet 电子邮件中,特定的邮箱或用户名是否存在,只能由传送消息的最终服务器决定。消息可能通过几个中继服务器(它们不能检测错误),然后再到达最终服务器。通常,当最终服务器检测到这一错误,它会返回一个消息给原始消息的发送人,指出失败的原因。有许多 Internet 标准讨论了这种传送状态通知 (Delivery Status Notifications),但大量服务器不支持这些新标准,相反使用非凡技术来返回这种错误消息。这使得将“回弹”消息与产生问题的原始消息相互关联起来非常困难(注重,这个问题与 JavaMail 完全无关)。
  
    有许多技术和试探法用于处理这一问题,但它们都不是完美的。一种技术是 Variable Envelope Return Paths,http://cr.yp.to/proto/verp.txt 描述了这一技术。
  
    我修改了程序,也只是作了些简单的处理,代码如下:
  
   private void parseMultipart(Multipart multipart) throws Exception {
    for (int i = 0, n = multipart.getCount(); i n; i++) {
     BodyPart part = multipart.getBodyPart(i);
     String disposition = part.getDisposition();
  
     if (part.isMimeType("multipart/*")) {
      this.parseMultipart((Multipart) part.getContent());
     } else if (part.isMimeType("text/Html")) {
     //处理文本内容
     }
     /******* 处理附件,图片等等 ********/
     } else if (part.isMimeType("message/delivery-status")) {
      part.setFileName("details.txt"); //仿照Outlook,details.txt 内容即传送状态通知的邮件头信息
      saveAttachedFile(part);
     } else if (part.isMimeType("message/rfc822")) {
  
展开更多 50%)
分享

猜你喜欢

利用javamail收取Hotmail的退信

编程语言 网络编程
利用javamail收取Hotmail的退信

javamail收取Hotmail的退信

Java JAVA基础
javamail收取Hotmail的退信

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

JavaMail访问Hotmail邮箱

Java JAVA基础
JavaMail访问Hotmail邮箱

用QQ邮箱收取hotmail的电子邮件

电脑入门
用QQ邮箱收取hotmail的电子邮件

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

javamail在jsp中调用

Java JAVA基础
javamail在jsp中调用

Foxmail如何接收Hotmail邮件

电脑网络
Foxmail如何接收Hotmail邮件

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

Win10如何关闭后台程序

Win10如何关闭后台程序

取消屏保和壁纸 让win7跑得更快

取消屏保和壁纸 让win7跑得更快
下拉加载更多内容 ↓