我能够在 java 中将邮件发送到 gmail,当“Allow less secure apps: ON
“(你可以找到代码here http://www.javatpoint.com/example-of-sending-email-using-java-mail-api-through-gmail-server)。但是当“允许不太安全的应用程序:关闭”时出现错误。请给我适当的步骤来解决这个问题。
Error:
534-5.7.14 <https://accounts.google.com/ContinueSignIn?sarp=1&scc=1&plt=AKgnsbtDY
534-5.7.14 01tH8y-udRciS_SO5d08uqHUrrFPAbG1_XdRaoO-x_gAICwxl_UIsENPSoTXVrNqFs5BcR
534-5.7.14 KXMaVoEIwR9uACjnduELTwJg0SxLrXL5CltztHepubHzUzgC6h-iszlhKrUuckV1-k6FWS
534-5.7.14 jpMrpomFM2k_UcOdDm7SyTde8MadhGyxmYDZ5KZAHcqkRGKjR6hU7oY8hUaTFocikPxquP
534-5.7.14 B2iqPFDd4NLZqv6qGfDNK0q_i17s> Please log in via your web browser and
534-5.7.14 then try again.
534-5.7.14 Learn more at
534 5.7.14 https://support.google.com/mail/answer/78754 ud10sm34016765pab.27 - gsmtp
我如何获得令牌:
第1步:我在谷歌开发者控制台中创建了服务帐户。
步骤2:接下来,通过使用这个服务帐户我获得了令牌。您可以在下面找到代码。
步骤3:如何使用此令牌向gmail发送邮件?请指导我。谢谢,我对此很陌生。指导我,如果我错了
String emailAddress = "[email protected] /cdn-cgi/l/email-protection";
JsonFactory JSON_FACTORY = JacksonFactory.getDefaultInstance();
HttpTransport httpTransport;
try {
httpTransport = GoogleNetHttpTransport.newTrustedTransport();
GoogleCredential credential = new GoogleCredential.Builder()
.setTransport(httpTransport)
.setJsonFactory(JSON_FACTORY)
.setServiceAccountId(emailAddress)
.setServiceAccountPrivateKeyFromP12File(new File("XXXX.p12"))
.setServiceAccountScopes(Collections.singleton(SQLAdminScopes.SQLSERVICE_ADMIN))
.build();
System.out.println("success......");
credential.refreshToken();
token = credential.getAccessToken();
升级到使用最新安全措施的更安全的应用程序。
How:
- 首先阅读此内容
https://developers.google.com/identity/protocols/OAuth2 https://developers.google.com/identity/protocols/OAuth2它描述了
为什么以及如何运作
- 这是您需要导入到项目中的库
https://developers.google.com/api-client-library/java/google-api-java-client/oauth2 https://developers.google.com/api-client-library/java/google-api-java-client/oauth2
这非常简单,您只需要完成所有步骤,一切都解释得很好。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)