Sto inviando email tramite Java utilizzando com.sun.mail.smtp.SMTPTransport.Come controllare l'indirizzo di posta elettronica esiste o no?
Sono riuscito a inviare l'e-mail, ma SMTPTransport non ha dato alcun errore se invio la posta a un indirizzo e-mail non valido.
C'è un modo per verificare se esiste un determinato indirizzo di posta elettronica oppure no?
Non voglio dire per controllare l'indirizzo di posta elettronica come parte cliente, ho bisogno di controllare come lato server di .
Ho trovato molte domande come questa in molti forum ma non ho trovato soluzioni adeguate.
il mio codice è -
String email = "[email protected]";
Properties props = new Properties();
props.put("mail.smtps.host", "mail.myDomain.com");
props.put("mail.smtps.auth", "true");
Session session = Session.getInstance(props, null);
MimeMessage msg = new MimeMessage(session);
msg.setFrom(new InternetAddress("Mail Demo <[email protected]>"));
msg.setRecipients(Message.RecipientType.TO, email);
msg.setSubject("Mail Example");
msg.setSentDate(new Date(System.currentTimeMillis()));
String txt = "Message Body";
msg.setText(txt);
SMTPTransport st = (SMTPTransport)session.getTransport("smtps");
st.connect("mail.myDomain.com","[email protected]","password");
st.sendMessage(msg, msg.getAllRecipients());
System.out.println("ServerResponse : " + st.getLastServerResponse());
Si dà in uscita sia per email_address validi e non validi: - 250 OK id = 1TbWgN-0007oY-8r
Ti prego, aiutami a risolvere il problema. Grazie in anticipo.
Cosa hai provato? Non vedo nulla nel tuo codice per verificare la validità/correttezza di un indirizzo email. Lo farei con un'espressione regolare. – jlordo
define valid: intendi controllare se un'e-mail corrisponde effettivamente a una vera casella di posta o che l'e-mail ha una sintassi valida? – Peter
@jlordo grazie per la risposta. L'espressione regolare controlla solo che l'indirizzo di posta elettronica sia in formato valido. Voglio verificare che l'indirizzo di posta elettronica esista o meno – Deepu