我正在尝试使用Java应用程序连接iCloud邮件。我想使用用户凭据从iCloud IMAP邮件服务器读取邮件。但它不起作用。下面的代码片段适用于Gmail、Yahoo和Outlook,但不适用于iCloud:
public void connectToIMAP(final User user, MailSettings settings) {
ICloudSettings iCloud = (ICloudSettings) settings;
properties = System.getProperties();
properties.setProperty("mail.store.protocol", iCloud.imap.protocol);
properties.setProperty("mail.imap.starttls.enable", "true");
properties.setProperty("mail.imap.debug", "true");
try {
session = Session.getInstance(properties);
session.setDebug(true);
store = session.getStore();
store.connect(iCloud.imap.host, iCloud.imap.port, user.getEmail(), user.getPassword());
folder = store.getFolder(MailSettings.INBOX);
folder.open(Folder.READ_ONLY);
} catch (Exception e) {
e.printStackTrace();
}
}
public ICloudSettings() {
imap.host = "imap.mail.me.com";
imap.port = 993;
imap.protocol = "imaps";
}
调试信息为:
debug:setdebug:JavaMail版本1.5.4
调试:getProvider()返回
javax.mail.provider[STORE,imaps,com.sun.mail.imap.imapsslstore,Oracle]
调试IMAPS:Mail.imap.FetchSize:16384
调试IMAPS:Mail.imap.IgnoreBodyStructureSize:false
调试IMAPS:closeFoldersOnStoreFailure
调试IMAPS:正在尝试连接到主机“imap.mail.me.com”,端口993,isSSL true*OK[CAPABILITY mr11p00im-iscream006 15E43 XAPPLEPUSHSERVICE IMAP4 IMAP4rev1 sasl-ir auth=atoken auth=plain]iSCREAM准备就绪(15E43-20056:9352)mr11p00im-iscream006[24:210:09:33:11:22]
调试IMAPS:Auth:ATOKEN
调试IMAPS:Auth:纯
DEBUG imaps:AUTHENTICATE普通命令结果:A0 NO[AUTHENTICATIONFAILED]Authentication failed javax.mail.authenticationfailedexception:[AUTHENTICATIONFAILED]Authentication failed at com.sun.mail.imap.imapstore.protocolconnect(imapstore.java:723)at javax.mail.service.connect(service.java:364)
嗨,我也通过IMAP连接到iCloud,但不是通过java Mail。我使用的是GitHub上提供的K9邮件客户端的一段代码。我发现,当你的icloud账户开启了2因子授权时,访问IMAP是不起作用的。当我收到类似的消息(身份验证失败)时,第二种情况是我使用不同的电子邮件地址,而不是@icloud.com。例如,我用gmail帐户设置了apple id,并创建了@icloud.com别名。我无法以gmail地址作为用户名访问IMAP,但当我使用@icloud.com别名时没有问题。
我正在尝试连接到我的电子邮件服务器使用我的spring boot应用程序。当我从命令提示符telnet localhost25时,我看到下面的- 220 Microsoft ESMTP邮件服务准备就绪2016年5月18日星期三11:09:30-0400 但是,当我尝试从我的程序连接时,我看到下面的错误 原因:org.springframework.Mail.mailsendexception:邮件
IMAP是Internet Message Access Protocol缩写。 它是一种应用层Internet协议,允许电子邮件客户端访问远程邮件服务器上的电子邮件。 IMAP服务器通常侦听众所周知的端口143.基于SSL的IMAP(IMAPS)被分配给端口号993。 IMAP支持在线和离线操作模式。 使用IMAP的电子邮件客户端通常会在服务器上保留消息,直到用户明确删除它们为止。 软件包com
问题内容: 当我尝试使用PHP发送电子邮件时,我一直收到此错误消息: 我的php.ini看起来像这样: 我将笔记本电脑用作服务器。.我在做什么错?谢谢。 问题答案: 您需要在本地运行邮件服务器。如果是Unix,请启用sendmail。如果是Windows,请安装IIs的“简单邮件传输服务器”(不确定名称是否正确)组件。
我使用的是spring Boot2.2.4-Release和spring integration 5.2.3,我使用的是IntegrationFlow和DSL,因为我需要配置几个IMAP服务器。 所以我写了这段代码: 其中是 通过设置,我可以在处理程序组件中处理,但我有一些问题。 null 我不知道是否应该做什么来告诉框架关闭文件夹 谁能给我提点建议吗? 谢谢你
我试图在测试环境中将Java应用程序连接到993上的IMAP服务器邮件。 我试图忽略证书验证,使用以前对类似问题的回答中的建议,如下所示: 但它似乎不起作用,我仍然有一个例外。 所以我的问题是,实际上是否有可能使用IMAPS协议连接到邮件服务器,而不必检查或验证证书? 如果是的话,选择忽略证书验证不是双方的决定吗?JavaApp和邮件服务器?
我使用的是David Walsh的脚本,它通过IMAP连接到Gmail,并在屏幕上输出电子邮件数据。 我已经运行了两个测试案例: 使用 IMAP 从我自己的域读取电子邮件。 使用 IMAP 从 gmail 读取电子邮件。 读120封邮件的时间差别很大。对于Gmail,整个脚本需要大约5秒,其中1.2秒连接,3.8秒阅读邮件,0.1629秒连接,0.0238秒阅读邮件。 这些价值观与我的预期大相径庭