使用mailR通过Gmail发送电子邮件时出错 [英] Error in sending email through Gmail by using mailR

查看:8958
本文介绍了使用mailR通过Gmail发送电子邮件时出错的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正尝试使用 mailR 软件包和gmail发送来自RStudio的电子邮件。以下是我的代码...

  library(mailR)
sender< - xxxxx@gmail.com
收件人< - c(xxxxx@gmail.com)
send.mail(from = sender,
to = recipients,
subject =测试来自Rstudio的邮件,
body =测试邮件正文,
smtp = list(host.name =smtp.gmail.com,port = 465,
user.name =xxxxx @ gmail .com,
passwd =******,ssl = TRUE),
authenticate = TRUE,
send = TRUE)


我收到以下错误消息...

  org.apache.commons.mail.EmailException:将电子邮件发送到以下服务器失败:smtp.gmail.com:465 
at org.apache.commons.mail.Email.sendMimeMessage(Email.java:1410 )
at org.apache.commons.mail.Email.send(Email.java:1437)
at sun.reflect.NativeMethodAccessorImpl.invoke0(本地方法)
at sun .reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at RJavaTools .invokeMethod(RJavaTools.java:386)
导致:javax.mail.AuthenticationFailedException:534-5.7.14< https://accounts.google.com/signin/continue?sarp = 1& scc = 1& amp ; PLT = AKgnsbuu
534-5.7.14 XIuKGOx55rNHFSvDWkzr2B1augfG-Z1zGTYEQ9IZ-iD_aDivhY0aUWNjt0C4ckYrqyx0WS
534-5.7.14 ZBZ-1z65Xz8C1irD5crNwDSpgL3qQGgo6V-PvkiA6h1on6Hnn-YjSeho0uBWcG59x1C4TH
534-5.7.14 F6ZM2i2TToB9tIjzoUv_3encd3EW0Aw04XBaTVkoWseyUOaTTvglnCIj23ZNrIncqXW0f5
534- 5.7.14 gjMKNtrSAOBmJxrgnXGrRS2BC9y9Q>请通过您的网络浏览器和
534-5.7.14登录,然后重试。
534-5.7.14以
的价格了解详情5.74 https://support.google.com/mail/answer/78754 t62sm25604268pfa.38 - gsmtp

at com .sun.mail.smtp.SMTPTransport $ Authenticator.authenticate(SMTPTransport.java:892)
at com.sun.mail.smtp.SMTPTransport.authenticate(SMTPTransport.java:814)
at com.sun .Service.java中的
(Service.java:386) :245)$ javax.mail.Service.connect处的
(Service.java:194)$ javax.mail.Transport.send0处的
(Transport.java:253)$ javax.mail处的
。 Transport.send(Transport.java:124)
at org.apache.commons.mail.Email.sendMimeMessage(Email.java:1400)
... 6 more
错误:EmailException( Java):将电子邮件发送到以下服务器失败:smtp.gmail.com:465

究竟是什么我在这里做错了?在错误消息中提到的谷歌链接不存在。



编辑:从谷歌收到一封电子邮件说'登录尝试阻止:有人试图登录不符合现代安全标准的应用程序......'



有没有办法解决这个问题?谷歌的电子邮件没有说任何关于允许我发送R的消息。

解决方案

允许访问安全性较低的应用程序这里:



http:// www。 google.com/settings/security/lesssecureapps


I am trying to send an email from RStudio using mailR package and gmail. The following is my code...

library(mailR)
sender <- "xxxxx@gmail.com"
recipients <- c("xxxxx@gmail.com")
send.mail(from = sender,
          to = recipients,
          subject = "Test mail from Rstudio",
          body = "Test email body",
          smtp = list(host.name = "smtp.gmail.com", port = 465, 
                      user.name = "xxxxx@gmail.com",            
                      passwd = "******", ssl = TRUE),
          authenticate = TRUE,
          send = TRUE)

I get the following error message...

org.apache.commons.mail.EmailException: Sending the email to the following server failed : smtp.gmail.com:465
    at org.apache.commons.mail.Email.sendMimeMessage(Email.java:1410)
    at org.apache.commons.mail.Email.send(Email.java:1437)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
    at java.lang.reflect.Method.invoke(Unknown Source)
    at RJavaTools.invokeMethod(RJavaTools.java:386)
Caused by: javax.mail.AuthenticationFailedException: 534-5.7.14 <https://accounts.google.com/signin/continue?sarp=1&scc=1&plt=AKgnsbuu
534-5.7.14 XIuKGOx55rNHFSvDWkzr2B1augfG-Z1zGTYEQ9IZ-iD_aDivhY0aUWNjt0C4ckYrqyx0WS
534-5.7.14 Zbz-1z65Xz8C1irD5crNwDSpgL3qQGgo6V-PvkiA6h1on6Hnn-YjSeho0uBWcG59x1C4TH
534-5.7.14 F6ZM2i2TToB9tIjzoUv_3encd3EW0Aw04XBaTVkoWseyUOaTTvglnCIj23ZNrIncqXW0f5
534-5.7.14 gjMKNtrSAOBmJxrgnXGrRS2BC9y9Q> 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 t62sm25604268pfa.38 - gsmtp

    at com.sun.mail.smtp.SMTPTransport$Authenticator.authenticate(SMTPTransport.java:892)
    at com.sun.mail.smtp.SMTPTransport.authenticate(SMTPTransport.java:814)
    at com.sun.mail.smtp.SMTPTransport.protocolConnect(SMTPTransport.java:728)
    at javax.mail.Service.connect(Service.java:386)
    at javax.mail.Service.connect(Service.java:245)
    at javax.mail.Service.connect(Service.java:194)
    at javax.mail.Transport.send0(Transport.java:253)
    at javax.mail.Transport.send(Transport.java:124)
    at org.apache.commons.mail.Email.sendMimeMessage(Email.java:1400)
    ... 6 more
Error: EmailException (Java): Sending the email to the following server failed : smtp.gmail.com:465

What exactly I am doing wrong here? The google link mentioned in the error message doesn't exist.

EDIT: Got an email from google saying 'Sign-in attempt prevented: someone tried to sign in from an app that doesn't meet modern security standards... '

Is there a way around this? The google email doesn't say anything about allowing me to send message from R.

解决方案

Enable access to 'less secure apps' here:

http://www.google.com/settings/security/lesssecureapps

这篇关于使用mailR通过Gmail发送电子邮件时出错的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆