【发布时间】:2019-05-13 10:33:10
【问题描述】:
我正在构建一个 java 微服务来阅读邮件。
我正在尝试使用 google 的 OAuth 令牌连接到 com.sun.mail:javax-mail:1.5.5 imap,我正在发送 access_token 代替密码及其引发的身份验证错误。
[AUTHENTICATIONFAILED] 无效凭据(失败)
Properties props = new Properties();
props.put("mail.imaps.ssl.enable", "true");
props.put("mail.imaps.auth.mechanisms", "XOAUTH2");
Session session = Session.getInstance(props);
Store store = session.getStore("imaps");
store.connect("imap.gmail.com", 993, "testingqa1919@gmail.com", accessToken);
【问题讨论】:
-
你试过
Store store = session.getStore("imap");吗?并在您的 gmail 中启用 IMAP?另外,您是否在您的 gmail 中启用了不太安全的应用程序? -
你能打开协议跟踪看看正在发送什么吗?
-
@HasithaMJayawardana 我已经启用了 imap 和不太安全的应用程序,因为我可以使用我的凭据登录。我从这里尝试过link
-
@Max 我不知道怎么做,但我会找出并做到这一点。谢谢。
-
@Liron 现在可以工作了。解析访问令牌时出错。