如何使用我的Active Directory用户和密码通过IMAP with java访问邮件帐户?
我有一个要求,我需要用java开发一种方法,使用电子邮件帐户、网络用户名及其网络密码作为身份验证,通过IMAP访问exchange电子邮件(Outlook) 作为一个例子,我有以下几点: 电子邮件帐户:hello@company123.com 网络用户:User123 网络密码:Pass123 因此,我们的想法是设置一个类似于连接图的调用(“hello@company123.com“,”User123“,”Pass123“)用于阅读hello@company123.com电子邮件 我检查了从另一个问题()中提取的以下代码,但它只显示了如何使用电子邮件作为用户访问gmail帐户如何使用我的Active Directory用户和密码通过IMAP with java访问邮件帐户?,java,email,active-directory,jakarta-mail,imap,Java,Email,Active Directory,Jakarta Mail,Imap,我有一个要求,我需要用java开发一种方法,使用电子邮件帐户、网络用户名及其网络密码作为身份验证,通过IMAP访问exchange电子邮件(Outlook) 作为一个例子,我有以下几点: 电子邮件帐户:hello@company123.com 网络用户:User123 网络密码:Pass123 因此,我们的想法是设置一个类似于连接图的调用(“hello@company123.com“,”User123“,”Pass123“)用于阅读hello@company123.com电子邮件 我检查了从另一
public class GmailFetch {
public static void main( String[] args ) throws Exception {
Session session = Session.getDefaultInstance(new Properties( ));
Store store = session.getStore("imaps");
store.connect("imap.googlemail.com", 993, "username@gmail.com", "password");
Folder inbox = store.getFolder( "INBOX" );
inbox.open( Folder.READ_ONLY );
// Fetch unseen messages from inbox folder
Message[] messages = inbox.search(
new FlagTerm(new Flags(Flags.Flag.SEEN), false));
// Sort messages from recent to oldest
Arrays.sort( messages, ( m1, m2 ) -> {
try {
return m2.getSentDate().compareTo( m1.getSentDate() );
} catch ( MessagingException e ) {
throw new RuntimeException( e );
}
} );
for ( Message message : messages ) {
System.out.println(
"sendDate: " + message.getSentDate()
+ " subject:" + message.getSubject() );
}
}
}
你想做点什么,你找到了一些代码来做。问题是什么?您是否尝试过更改
存储。是否将行连接到您的服务器信息?@arnt store.connect仅允许您将电子邮件帐户配置为用户,将电子邮件密码配置为密码,我需要使用网络凭据来执行此操作。考虑到网络用户可以有许多链接的电子邮件帐户,所以我需要一种方法(或另一种方式)来验证电子邮件帐户、网络用户和网络密码。@加布里埃卢克:是的。我已经试过了:store.connect(“imap.myserver.com”,993,”hello@company123.com“,”Pass123“,store.connect(“imap.myserver.com”,993,“User123”,“Pass123”);和store.connect(“imap.myserver.com”,993,”hello@company123.com“,“User123”,“Pass123”);这些工作听起来都不像是要配置IMAP服务器以允许使用这些密码进行访问。这是完全可能的,但不是一个编程问题,因此脱离主题。如果服务器配置正确,并且您的问题是如何使用它,则可能会有所帮助。