使用java验证smtp服务器凭据而不实际发送邮件
要验证 smtp 服务器凭据,我应该使用 transport.connect()
吗?
Session session = Session.getInstance(properties,authenticator);
Transport tr=session.getTransport("smtp");
tr.connect();
检查 smtp 服务器凭据的正确方法是吗?
To verify smtp server credentials shall I use transport.connect()
?
Session session = Session.getInstance(properties,authenticator);
Transport tr=session.getTransport("smtp");
tr.connect();
Is it correct method to check smtp server credentials?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
发布评论
评论(2)
回忆追雨的时光2024-09-13 15:55:37
public boolean confirmSMTP(String host, String port, String username, String password, String auth, String enctype) {
boolean result = false;
try {
Properties props = new Properties();
if (auth.equals(true)) {
props.setProperty("mail.smtp.auth", "true");
} else {
props.setProperty("mail.smtp.auth", "false");
}
if (enctype.endsWith("TLS")) {
props.setProperty("mail.smtp.starttls.enable", "true");
} else if (enctype.endsWith("SSL")) {
props.setProperty("mail.smtp.startssl.enable", "true");
}
Session session = Session.getInstance(props, null);
Transport transport = session.getTransport("smtp");
int portint = Integer.parseInt(port);
transport.connect(host, portint, username, password);
transport.close();
result = true;
} catch(AuthenticationFailedException e) {
Logging.addMsg(e.toString(), "SMTP: Authentication Failed", false, true);
} catch(MessagingException e) {
Logging.addMsg(e.toString(), "SMTP: Messaging Exception Occurred", false, true);
} catch (Exception e) {
Logging.addMsg(e.toString(), "SMTP: Unknown Exception", false, true);
}
return result;
}
~没有更多了~
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
这个问题:“在 ColdFusion 中以编程方式验证邮件服务器连接” 有一个java解决方案作为接受答案的一部分:
This question: 'Verify mail server connection programmatically in ColdFusion' has a java solution as part of the accepted answer: