Я пытаюсь получить доступ к учетной записи электронной почты на определенном почтовом сервере через «imap» через почту java.Я провел некоторое исследование по этому вопросу.И я нахожу следующий код, который работает для gmail.
import java.io.*;
import javax.mail.*;
import javax.mail.internet.*;
public class DeleteMessageExample {
public static void main (String args[]) throws Exception {
String host = args[0];
String username = args[1];
String password = args[2];
// Get session
Session session = Session.getInstance(
System.getProperties(), null);
// Get the store
Store store = session.getStore("imaps");
store.connect(host, username, password);
// Get folder
Folder folder = store.getFolder("INBOX");
folder.open(Folder.READ_WRITE);
BufferedReader reader = new BufferedReader (
new InputStreamReader(System.in));
// Get directory
Message message[] = folder.getMessages();
for (int i=0, n=message.length; i<n; i++) {
System.out.println(i + ": " + message[i].getFrom()[0]
+ "\t" + message[i].getSubject());
System.out.println("Do you want to delete message? [YES to delete]");
String line = reader.readLine();
// Mark as deleted if appropriate
if ("YES".equals(line)) {
message[i].setFlag(Flags.Flag.DELETED, true);
}
}
// Close connection
folder.close(true);
store.close();
}
}
Однако мне нужно указать args [0] как imap.gmail.com args [1] как usrname, args [2]быть паролем.И если я заменю imap.gmail.com на IP-адрес 74.125.224.86, он больше не будет работать.
Мой вопрос: предположим, у меня есть учетная запись на почте Yahoo, какое имя хоста мне следует использовать?Я попробовал imap.yahoo.com, mail.yahoo.com и IP-адрес.
Если вы знаете ответ, не могли бы вы также сказать мне, каково обычное правило, чтобы узнать, какое имя хоста мне следует использовать?
Большое спасибо.