2017-10-23 8 views
-1

私は自分のウェブサイト用のAPIを作っていますが、APIは一部のデータを取得、投稿、削除するために使用されますが、投稿するにはサードパーティのウェブサイトから生成できないcsrfトークンが必要です。いくつかのルートではドキュメントでは、verifycsrftoken.phpに以下を追加すると言う:laravel 5.4のいくつかのルートでcsrf tokeを無効にしますか?役に立たなかった

protected $except = [ 
    'leads', 
    'leads/*' 
]; 

しかし、これはlaravel 5.4で動作しません。任意の助けをいただければ幸いです

Route::post('leads/{id}', ['as'=>'leads']); 

: は、ここに私のサンプルのルートです。

+0

内csrfTokenを追加する必要があります。あなたはまだCSRF例外を取得していますか? – ceejayoz

+0

「MethodNotAllowedHttpException ' –

+0

それはおそらくPOST/GETの不一致です。フォームタグはどのように見えますか? – aynber

答えて

1

投稿したコードはうまくいくはずです。

あなたのコメントによると、エラーはMethodNotAllowedHttpExceptionです。間違ったタイプのURLにアクセスしようとすると、そのエラーがスローされます。 POST経由でフォームを送信するためには、formタグ

<form method="POST" action="{{ url('leads/'.$lead->id) }}> 

に示し、また、正常に動作する必要がありますフォーム

{!! csrf_field() !!} 
+0

\ App \ Http \ Middleware \ VerifyCsrfToken :: classのコマンドapp/Http/kernal.phpにcsrfトークンを使用する必要はありません – Gowthaman

+0

申し訳ありませんが、 、サードパーティのウェブサイトは私のメインのウェブサイトのcsrfトークンを生成することができません。そして、私はajax経由でapiを呼び出します。 –

+0

GETの代わりにPOSTからAPIを呼び出していることを確認してください。 – Lloople

関連する問題