1

我正在尝试使用 JavaMail 和 IMAP 读取邮箱的内容。没有 SSL,只有普通的 IMAP。

我的代码是这样的:

    // Connection default properties
    Properties props = new Properties();
    props.setProperty("mail.imap.timeout", "5000");
    props.setProperty("mail.imap.connectiontimeout", "5000");
    props.setProperty("mail.pop3.timeout", "5000");
    props.setProperty("mail.pop3.connectiontimeout", "5000");
    props.setProperty("mail.smtp.timeout", "5000");
    props.setProperty("mail.smtp.connectiontimeout", "5000");

    // Get session
    Session session = Session.getDefaultInstance(props, null);
    session.setDebug(true);

    // Get the store
    Store store = session.getStore(account.getProtocol()); // returns "imap"
    String username = account.getUsername();
    String password = account.getPassword();
    String host = account.getHost();
    store.connect(host, username, password);

    // Get folder
    Folder folder = store.getFolder("INBOX");
    folder.open(Folder.READ_ONLY);

    FlagTerm ft = new FlagTerm(new Flags(Flags.Flag.SEEN), false);
    Message messages[] = folder.search(ft);
    System.out.println("Ci sono " + messages.length + " messaggi da leggere");

这是我得到的:

https://www.dropbox.com/s/zbqh7gt3x​​qgobo7/imap_error.png

似乎 Exchange 服务器正在拒绝我的登录试验......我对此感到困惑,无法理解如何进一步进行。

任何人都可以帮忙吗?

4

1 回答 1

0

服务器配置为不允许在纯文本端口上进行“登录”。

请注意 CAPABILITY 响应:LOGINDISABLED,并且没有提供替代的 AUTH 方法。您可能需要使用 SSL 加密进行连接。

另一方面,我不知道为什么如果不能使用明文端口,他们为什么会保持打开明文端口....

于 2013-11-05T15:43:12.797 回答