为什么devise不通过gmail smtp发送电子邮件? [英] why is devise not sending email via gmail smtp?
问题描述
我正在使用devise进行身份验证。它提供了一个忘记密码的链接。当我发送电子邮件时,则不会发送电子邮件。以下是我使用的设置。您能告诉我为什么gmail不发送电子邮件吗?我还打开了允许不太安全的应用程序发送电子邮件的功能,并且还在gmail设置中启用了imap。
I am using devise for authentication. It provides a forgot password link. When i send email then the email is not sent. Following is the settings i have used. Can you tell me why gmail is not sending the email? I have also turned on "allow less secure app to send email" and i have also enabled imap in gmail setting.
application.rb具有以下设置。
application.rb has the following setting.
ActionMailer::Base.smtp_settings = {
:address => 'smtp.gmail.com',
:domain => 'mail.google.com',
:port => 587,
:user_name => 'validemail@gmail.com',
:password => 'validpassword',
:authentication => 'login',
:enable_starttls_auto => true
}
development.rb具有
development.rb has
config.action_mailer.default_url_options = { host: '127.0.0.1'}
config.action_mailer.delivery_method = :smtp
发送电子邮件后,我在控制台中收到以下文本。
After sending the email i get the following text in the console.
Devise::Mailer#reset_password_instructions: processed outbound mail in 215.2ms
Sent mail to validemail@gmail.com (1097.6ms)
Date: Thu, 29 Dec 2016 09:50:41 +0000
From: please-change-me-at-config-initializers-devise@example.com
Reply-To: please-change-me-at-config-initializers-devise@example.com
To: validemail@gmail.com
Message-ID: <5864dc7161acb_173921a07788707d@kofhearts-rubyonrails-3267120.mail>
Subject: Reset password instructions
Mime-Version: 1.0
Content-Type: text/html;
charset=UTF-8
Content-Transfer-Encoding: 7bit
<p>Hello validemail@gmail.com!</p>
<p>Someone has requested a link to change your password. You can do this through the link below.</p>
<p><a href="http://127.0.0.1/users/password/edit?reset_password_token=WQxYad91mPghMxaurYA5">Change my password</a></p>
<p>If you didn't request this, please ignore this email.</p>
<p>Your password won't change until you access the link above and create a new one.</p>
Redirected to https://rubyonrails-kofhearts.c9users.io/users/sign_in
Completed 302 Found in 1965ms (ActiveRecord: 14.7ms)
更新:
我只是在学习本教程。
I am just following this tutorial.
https://www.youtube .com / watch?v = ZEk0Jp2dThc
发送电子邮件无法使用此视频中指定的设置。
Send email is not working with the settings that are specified in this video.
推荐答案
在我的帐户设置中启用安全性较低的应用对我有用。
Enabling less secure apps in my account settings worked for me.
Google帐户设置>登录Google>向下滚动至底部
Google Account settings > Signing in to Google > scroll down to the bottom
打开允许安全性较低的应用程序。尝试再次发送电子邮件。
Turn on allow less secure apps. Try sending the email again.
这篇关于为什么devise不通过gmail smtp发送电子邮件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!