Accesso al server SMTP - come posso autenticare la posta che sto inviando con il server smtp?

Se si utilizza l'API JavaMail fornita da Sun, è possibile ottenere l'ultima API da Sun Downloads.
JavaMail utilizza le proprietà per caricare tutta la configurazione del programma.
È necessario specificare:
# Il nome host o l'indirizzo IP del vostro server SMTP
mail.smtp.host=smtp.duke.java.sun.com

# Si ottengono molte informazioni di debug se
# è attivato. Commentare questa riga per attivare
# spento.
mail.debug=true

# L'indirizzo e-mail A
ttapr2004.to=duke@duke.java.sun.com

# L'indirizzo e-mail Da
ttapr2004.from=duke@j2ee_fanclub.java.su…

È possibile connettersi facilmente senza autenticarsi al server SMTP. Tuttavia, è possibile che non si riesca a inviare e-mail dal proprio programma Java:
1. Il vostro ip potrebbe essere bloccato dal firewall per Accesso al server SMTP
2. Il vostro server SMTP blocca l'indirizzo del mittente, l'indirizzo di destinazione e forse il vostro ip.
3. Il server SMTP richiede l'autenticazione

Se il server richiede l'autenticazione, questo è stato ottenuto da Internet.
————————————–…
public class SendMailUsingAuthentication {

private static final String SMTP_HOST_NAME = "myserver.smtphost.com";
private static final String SMTP_AUTH_USER = "myusername";
private static final String SMTP_AUTH_PWD = "mypwd";

private static final String emailMsgTxt =
"Messaggio di conferma dell'ordine online. Includere anche il numero di tracciamento";
private static final String emailSubjectTxt = "Oggetto conferma ordine";
private static final String emailFromAddress = "sudhir@javacommerce.com";

// Aggiungere un elenco di indirizzi e-mail a cui inviare l'email
private static final String[] emailList = {
"mark@yahoo.com", "robin@javacommerce.com"};

public static void main(String args[]) throws Exception {
SendMailUsingAuthentication smtpMailSender = new
SendMailUsingAuthentication();
smtpMailSender.postMail(emailList, emailSubjectTxt, emailMsgTxt,
emailFromAddress);
System.out.println("Inviata con successo la posta a tutti gli utenti");
}

public void postMail(String recipients[], String subject,
String message, String from) lancia MessagingException {
booleano debug = false;

//Impostare l'indirizzo smtp dell'host
Properties props = new Properties();
props.put("mail.smtp.host", SMTP_HOST_NAME);
props.put("mail.smtp.auth", "true");

Authenticator auth = new SMTPAuthenticator();
Sessione = Session.getDefaultInstance(props, auth);

session.setDebug(debug);

// creare un messaggio
Messaggio msg = nuovo MimeMessage(sessione);

// impostare l'indirizzo da e a
InternetAddress addressFrom = new InternetAddress(from);
msg.setFrom(addressFrom);

InternetAddress[] addressTo = new InternetAddress[recipients.length];
for (int i = 0; i < recipients.length; i++) {
addressTo[i] = new InternetAddress(recipients[i]);
}
msg.setRecipients(Message.RecipientType…. addressTo);

// Impostazione dell'oggetto e del tipo di contenuto
msg.setSubject(subject);
msg.setContent(message, "text/plain");
Transport.send(msg);
}

/**
* SimpleAuthenticator viene utilizzato per eseguire un'autenticazione semplice
* quando il server SMTP lo richiede.
*/
classe privata SMTPAuthenticator
estende javax.mail.Authenticator {

public PasswordAuthentication getPasswordAuthentication() {
Stringa username = SMTP_AUTH_USER;
String password = SMTP_AUTH_PWD;
restituire una nuova PasswordAuthentication(nome utente, password);
}
}
}
————————————–…

Disclaimer - Le opinioni espresse in questo articolo sono fornite da una terza parte e potrebbero non corrispondere a quelle del nostro sito web.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Tutti sanno che disporre di un server SMTP affidabile è la chiave per far sì che la posta elettronica venga consegnata correttamente. È anche risaputo che NESSUNO offre più SMTP senza autenticazione o per open relay. MA È ANCORA POSSIBILE OTTENERE GRATUITAMENTE UN SERVER SMTP DI ALTA QUALITÀ!

Clicca qui per il tuo SERVER SMTP GRATUITO