2016-06-30 7 views
0

Ich versuche, ein Kontaktformular für einen Client zu konfigurieren. Er hat mir das korrekte Passwort und den Benutzernamen von seinem E-Mail-Account mitgeteilt. Aus irgendeinem Grund erhalte ich immer den Authentifizierungsfehler.Net :: SMTPAuthenticationError beim Senden über Pony Mail mit Ruby

Hier ist der Code:

post '/contact-us' do 
    require 'pony' 
    first_name = params[:first_name] 
    last_name = params[:last_name] 
    mail = params[:mail] 
    subject = params[:subject] 
    body = params[:body] 

Pony.options = { 
    :via => :smtp, 
    :via_options => { 
    :address    => 'smtp.zoho.com', 
    :location    => '/c/sendmail/./sendmail', 
    :ssl     => true, 
    :arguments   => '-t', 
    :port     => '465', 
    # :enable_starttls_auto => true, 
    :user_name   => 'username', 
    :password    => "password", 
    :authentication  => :login, # :plain, :login, :cram_md5, no auth by default 
    :domain    => "localhost", 
    # :tls    => true 
    } 
} 


    Pony.mail(
     :to => '[email protected]', 
     :from => first_name + '<' + mail + '>', 
     :reply_to => mail, 
     :subject => subject, 
     :body => body) 



    redirect '/success' 
end 

Hier ist der Backtrace:

c:/RailsInstaller/Ruby2.1.0/lib/ruby/2.1.0/net/smtp.rb in check_auth_response 
     raise SMTPAuthenticationError, res.message 
c:/RailsInstaller/Ruby2.1.0/lib/ruby/2.1.0/net/smtp.rb in auth_plain 
     check_auth_response res 
c:/RailsInstaller/Ruby2.1.0/lib/ruby/2.1.0/net/smtp.rb in authenticate 
     send auth_method(authtype), user, secret 
c:/RailsInstaller/Ruby2.1.0/lib/ruby/2.1.0/net/smtp.rb in do_start 
     authenticate user, secret, (authtype || DEFAULT_AUTH_TYPE) if user 
c:/RailsInstaller/Ruby2.1.0/lib/ruby/2.1.0/net/smtp.rb in start 
      do_start helo, user, secret, authtype 
main.rb in block in <main> 
    Pony.mail(
c:/RailsInstaller/Ruby2.1.0/lib/ruby/2.1.0/webrick/httpserver.rb in service 
     si.service(req, res) 
c:/RailsInstaller/Ruby2.1.0/lib/ruby/2.1.0/webrick/httpserver.rb in run 
      server.service(req, res) 
c:/RailsInstaller/Ruby2.1.0/lib/ruby/2.1.0/webrick/server.rb in block in start_thread 
      block ? block.call(sock) : run(sock) 
GET 
No GET data. 
POST 
Variable Value 
body  
"Testing" 
first_name 
"Michael" 
last_name 
"Stokes" 
mail  
"[email protected]" 
subject 
"Test" 
COOKIES 
No cookie data. 
Rack ENV 
Variable Value 
CONTENT_LENGTH 
89 
CONTENT_TYPE  
application/x-www-form-urlencoded 
GATEWAY_INTERFACE 
CGI/1.1 
HTTP_ACCEPT 
text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8 
HTTP_ACCEPT_ENCODING  
gzip, deflate 
HTTP_ACCEPT_LANGUAGE  
en-US,en;q=0.8 
HTTP_CACHE_CONTROL 
max-age=0 
HTTP_CONNECTION 
keep-alive 
HTTP_HOST 
localhost:4567 
HTTP_ORIGIN 
http://localhost:4567 
HTTP_REFERER  
http://localhost:4567/contact-us 
HTTP_UPGRADE_INSECURE_REQUESTS 
1 
HTTP_USER_AGENT 
Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.103 Safari/537.36 
HTTP_VERSION  
HTTP/1.1 
PATH_INFO 
/contact-us 
QUERY_STRING  
REMOTE_ADDR 
::1 
REMOTE_HOST 
MSTOKES 
REQUEST_METHOD 
POST 
REQUEST_PATH  
/contact-us 
REQUEST_URI 
http://localhost:4567/contact-us 
SCRIPT_NAME 
SERVER_NAME 
localhost 
SERVER_PORT 
4567 
SERVER_PROTOCOL 
HTTP/1.1 
SERVER_SOFTWARE 
WEBrick/1.3.1 (Ruby/2.1.5/2014-11-13) 
rack.errors 
#<Object:0x3471090> 
rack.hijack 
#<Proc:[email protected]:/RailsInstaller/Ruby2.1.0/lib/ruby/gems/2.1.0/gems/rack-1.6.4/lib/rack/handler/webrick.rb:76 (lambda)> 
rack.hijack?  
true 
rack.hijack_io 
nil 
rack.input 
#<StringIO:0x5dab768> 
rack.logger 
#<Logger:0x5dd4e08 @progname=nil, @level=1, @default_formatter=#<Logger::Formatter:0x5dd4df0 @datetime_format=nil>, @formatter=nil, @logdev=#<Logger::LogDevice:0x5dd4dc0 @shift_size=nil, @shift_age=nil, @filename=nil, @dev=#<IO:<STDERR>>, @mutex=#<Logger::LogDevice::LogDeviceMutex:0x5dd4da8 @mon_owner=nil, @mon_count=0, @mon_mutex=#<Mutex:0x5dd4d78>>>> 
rack.multiprocess 
false 
rack.multithread  
true 
rack.request.cookie_hash  
{} 
rack.request.form_hash 
{"first_name"=>"Michael", "last_name"=>"Stokes", "mail"=>"[email protected]", "subject"=>"Test", "body"=>"Testing"} 
rack.request.form_input 
#<StringIO:0x5dab768> 
rack.request.form_vars 
first_name=Michael&last_name=Stokes&mail=mjstokes1986%40att.net&subject=Test&body=Testing 
rack.request.query_hash 
{} 
rack.request.query_string 
rack.run_once 
false 
rack.url_scheme 
http 
rack.version  
[1, 3] 
sinatra.accept 
[#<Sinatra::Request::AcceptEntry:0x63e7618 @entry="text/html", @type="text/html", @params={}, @q=1.0>, #<Sinatra::Request::AcceptEntry:0x63e74f8 @entry="application/xhtml+xml", @type="application/xhtml+xml", @params={}, @q=1.0>, #<Sinatra::Request::AcceptEntry:0x63e71f8 @entry="image/webp", @type="image/webp", @params={}, @q=1.0>, #<Sinatra::Request::AcceptEntry:0x63e7408 @entry="application/xml;q=0.9", @type="application/xml", @params={}, @q=0.9>, #<Sinatra::Request::AcceptEntry:0x63e7108 @entry="*/*;q=0.8", @type="*/*", @params={}, @q=0.8>] 
sinatra.commonlogger  
true 
sinatra.error 
#<Net::SMTPAuthenticationError: 535 Authentication Failed > 
sinatra.route 
POST /contact-us 

Was kann ich tun, um es zu beheben?

+0

Können Sie einen Backtrace für die Fehlermeldung zur Verfügung stellen? – Kashyap

+0

Was meinst du backtrace? –

+0

'Aus irgendeinem Grund bekomme ich immer den Authentifizierungsfehler' Gibt dies irgendwelche Stack-Trace-Informationen aus? Es könnte Leuten helfen, die Ursache zu debuggen. – Kashyap

Antwort

0

den folgenden Code Versuchen Sie, diese allgemeine einrichten Werke auf meiner Seite:

Pony.mail({ 
    :to => '[email protected]', 
    :from => first_name + '<' + mail + '>', 
    :reply_to => mail, 
    :subject => subject, 
    :body => body, 
    :via => :smtp, 
    :via_options => { 
    :address    => 'smtp.zoho.com', 
    :port     => 465,     
    :user_name   => '[email protected]', 
    :password    => 'a password',   
    :authentication  => :login, 
    :ssl     => true, 
    :tls     => true, 
    :enable_starttls_auto => true 
    } 
}) 
+0

Es funktioniert mit meinen Anmeldeinformationen, aber nicht mit denen meines Kunden. Ich denke, seine Login-Daten sind falsch. –

Verwandte Themen