2016-10-14 5 views
1

В настоящее время я работаю над некоторым приложением, основанным на Laravel 5.2. Мне нужно отправить электронное письмо с ссылкой на пароль сброса для пользователя, и я использую mailgun. Все работает нормально, когда я отправляю электронное письмо на почту, на которой зарегистрирован mailgun. Но он терпит неудачу, когда это какой-либо другой адрес электронной почты.Laravel 5.2 mailgun error bad request

Ошибка говорит:

ClientException в RequestException.php линии 71: реакция на ошибку клиента [URL] https://api.mailgun.net/v3/sandbox ********************* **********. mailgun.org/messages.mime [код состояния] 400 [причина фразы] BAD ЗАПРОС

Я пробовал много решений, но ни один из них не работает. Любая идея, почему это происходит? Может быть, это вызвано localhost? Я использую:

  • Laravel 5,2
  • Mailgun
  • WAMP как мой локального хоста
  • guzzlehttp v.4.0 функция

Контроллер:

public function sendEmail() { 
    $sent = Mail::send('mails.test', [], function ($message) { 
     $message->to('[email protected]','somename'); 
     $message->subject("Activate Your Account"); 
     $message->getSwiftMessage(); 
    }); 
    if ($sent === 0) { 
     return redirect('/') 
      ->withErrors('Failed to send activation email.'); 
    } 
    return redirect('/') 
     ->withSuccess('Mail was sent.'); 
} 

окр данные:

MAIL_DRIVER=mailgun 
MAIL_HOST=smtp.mailgun.org 
MAIL_PORT=587 
[email protected]*****************************.mailgun.org 
MAIL_PASSWORD=********************** 
MAIL_ENCRYPTION=null 

MAILGUN_DOMAIN=sandbox*****************************.mailgun.org 
MAILGUN_SECRET=key-***************************** 

Файл: конф/mail.php сконфигурирован как .env данных

Маршрут:

Route::get('auth/send','[email protected]'); 

Кнопка:

<a href="{{action('[email protected]')}}" class="btn btn-danger">Test mail</a> 
+0

Не могли бы вы опубликовать код, который вы пытаетесь? –

ответ

0

Попробуйте удалить MAIL_HOST=smtp.mailgun.org из .env и дать пытаться. Я столкнулся с такой же ситуацией в прошлом, и удаление MAIL_HOST сработало для меня. Новая .env конфигурация будет выглядеть

MAIL_DRIVER=mailgun 
MAIL_PORT=587 
[email protected]*****************************.mailgun.org 
MAIL_PASSWORD=********************** 
MAIL_ENCRYPTION=null 

MAILGUN_DOMAIN=sandbox*****************************.mailgun.org 
MAILGUN_SECRET=key-***************************** 

после этого запустите php artisan config:cache и php artisan config:clear от command line и проверить, является ли почта работает или нет.

+0

К несчастью, не работали – tmonq