2016-12-29 7 views
0

私はlaravelでメールを送信する際にmailgunを使用しています。Mailgun Error 'APIに渡されたパラメータが無効です

ここでメールコード:

$data = array('name' => ucfirst($customer_name),'email' => $email, 'ticket_id' => $ticket_id); 
$mail_data = array('name' => ucfirst($customer_name),'email' => $email, 'mobile' => $contact, 'address' => $address, 'delivery_type' => ucfirst(Input::get('delivery_type')), 'pickup_type' => ucfirst(Input::get('pickup_type')), 'pickup_date' => $pickup_date, 'pickup_time' => $pickup_time, 'brand' => $brand_name, 'ticket_id' => $ticket_id, 'city' => $region_name); 

Mailgun::send('emails.ticket', $mail_data , function($message) use($data) 
{ 
    $message->to($data['email'], $data['name']) 
      ->bcc(array('[email protected], [email protected], [email protected], [email protected]')) 
      ->subject('Service Request! - '.$data['ticket_id']); 
      }); 

は、私は、ログをチェックしに考え出し:

[2016-12-29 05:58:58] production.ERROR: exception 'Mailgun\Connection\Exceptions\MissingRequiredParameters' with message 'The parameters passed to the API were invalid. Check your inputs! Sandbox subdomains are for test purposes only. Please add your own domain or add the address to authorized recipients in Account Settings.' in /var/www/html/mysite/vendor/mailgun/mailgun-php/src/Mailgun/Connection/RestClient.php:169 
Stack trace: 
#0 /var/www/html/mysite/vendor/mailgun/mailgun-php/src/Mailgun/Connection/RestClient.php(88): Mailgun\Connection\RestClient->responseHandler(Object(GuzzleHttp\Message\Response)) 
#1 /var/www/html/mysite/vendor/mailgun/mailgun-php/src/Mailgun/Mailgun.php(106): Mailgun\Connection\RestClient->post('sandbox798d350d...', Array, Array) 
#2 /var/www/html/mysite/vendor/mailgun/mailgun-php/src/Mailgun/Mailgun.php(53): Mailgun\Mailgun->post('sandbox798d350d...', Array, Array) 
#3 /var/www/html/mysite/vendor/bogardo/mailgun/src/Bogardo/Mailgun/Mailgun.php(104): Mailgun\Mailgun->sendMessage('sandbox798d350d...', Array, Array) 
#4 /var/www/html/mysite/vendor/laravel/framework/src/Illuminate/Support/Facades/Facade.php(222): Bogardo\Mailgun\Mailgun->send('emails.ticket', Array, Object(Closure)) 
#5 /var/www/html/mysite/app/Http/Controllers/AppController.php(384): Illuminate\Support\Facades\Facade::__callStatic('send', Array) 
#6 /var/www/html/mysite/app/Http/Controllers/AppController.php(384): Bogardo\Mailgun\Facades\Mailgun::send('emails.ticket', Array, Object(Closure)) 
#7 [internal function]: App\Http\Controllers\AppController->pickup_request() 
#8 /var/www/html/mysite/vendor/laravel/framework/src/Illuminate/Routing/Controller.php(256): call_user_func_array(Array, Array) 
#9 /var/www/html/mysite/vendor/laravel/framework/src/Illuminate/Routing/ControllerDispatcher.php(164): Illuminate\Routing\Controller->callAction('pickup_request', Array) 

私は、問題がどこにあるか把握することはできませんよ?構文エラーですか?何が間違っているのでしょうか?

これは正常に機能して停止しました。

ありがとうございます!

+0

'Mailgun'何ですか?ララベルの「メール」ですか? –

+0

@LionelChan:http://www.mailgun.com/ –

+0

いいえ私は何が郵便配達を知っています。それはメールサービスです。私が意味したことは、 'Mailgun :: send'を経由して電子メールを送信するが、' Mail :: send'ではないということです。 –

答えて

1

エラーがAPIに渡されたパラメータが無効ですべて:)

を伝えます。あなたの入力を確認してください!サンドボックスのサブドメインはテスト目的のみです。自分のドメインを追加するか、アカウント設定の権限のある受信者にアドレスを追加してください。

Mailgunでは、サンドボックスのサブドメインはテスト専用です。電子メールを実際に送信する必要がある場合は、あなたの郵便受けにドメイン名を追加するか、許可された受信者をあなたの郵便配達勘定設定に追加する必要があります。

したがって、この場合には、あなたは[email protected][email protected][email protected][email protected]ホワイトリストのメールにあなたのmailgunホワイトリストドメインにmydomain.comを追加したり、追加するのいずれかが必要になります。

関連ドキュメント:https://help.mailgun.com/hc/en-us/articles/217531258-Authorized-Recipients

関連Q & A:https://laracasts.com/discuss/channels/laravel/sending-emails-with-mailgun

関連する問題