我什么时候需要使用Authenticator来读取和发送通过Javamail的电子邮件?

时间:2013-09-19 06:25:26

标签: java email authentication javamail

我有点困惑于何时需要使用Authenticator通过Javamail读取和发送电子邮件? Java mail FAQ明确指出不需要Authenticator。就是这样:props.put("mail." + protocol + ".auth", "true");会完成工作。然而,我在SO和其他方面看到了很多代码,其中将属性props.put("mail." + protocol + ".auth", "true");设置为true并且也使用了Authenticator,这是必需/必要的吗?我们什么时候使用什么?

身份验证员: -

private class SMTPAuthenticator extends javax.mail.Authenticator {
        String _uid;
        String _pwd;
        public SMTPAuthenticator(String uid, String pwd){
            this._uid = uid;
            this._pwd = pwd;
        }
        public PasswordAuthentication getPasswordAuthentication() {
            return new PasswordAuthentication(this._uid, this._pwd);
        }
    }

1 个答案:

答案 0 :(得分:1)

您永远不需要使用身份验证器。

Authenticator是一种允许您的应用程序“按需”提供用户名和密码的方法。如果你与人交往,那是个好主意。如果提前知道用户名和密码,您可以跳过身份验证器并在进行连接呼叫时直接提供。