0

我对何时需要使用身份验证器通过 Javamail 阅读和发送电子邮件感到有些困惑?Java 邮件常见问题解答特别指出不需要 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);
        }
    }
4

1 回答 1

1

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

Authenticator 是一种允许您的应用程序“按需”提供用户名和密码的方法。如果您正在与人类互动,那是个好主意。如果事先知道用户名和密码,则可以跳过验证器并在进行连接调用时直接提供它们。

于 2013-09-19T18:24:39.287 回答