2016-11-14 10 views
0

Laravelプロジェクト(API)で作業していますが、リクエストヘッダーのカスタムパラメータに問題があります。Laravelはnginxでリクエストに応じてparamヘッダーを取得できません

リクエストヘッダーにトークンを送信する必要があります。そのため、リクエストにパラメータapi_tokenを追加するだけです。

私は$request->header('api_token')と私の地元apache2で構成され、私はLaravelに取得することができ、私のヘッダーリクエストのparamにですが、私はnginxで構成され、私のサーバー上でTRとき、私はいつも私のためにnull

を取得すると、そこにありますnginxとヘッダー要求の問題、私は何ができますか?

アイデア?おそらくそれはnginxからではありません...

+0

Laravelは、ヘッダーパラメータを取得するために 'Symfony \ Component \ HttpFoundation \ Request'' headers'コレクションを使用します。 symfonyのコンポーネント関連のタグで質問してください。 – Morilog

答えて

6

Nginxはデフォルトでアンダースコアのヘッダーを許可しないためです。

$request->header('api-token'); 

それとも、アンダースコアでヘッダを許可するようにnginxの設定を構成することができます:あなたは、単にapi-tokenにあなたのヘッダパラメータを更新することができます。どこかserverブロックの間に、このようunderscores_in_headersディレクティブを追加します。

server { 
    ... 
    underscores_in_headers on; 
    ... 
} 

はまた、あなたのnginxの設定をリロードすることを忘れないでください。このunderscores_in_headers指令hereの詳細についてはこちらをご覧ください。

これがあなたの問題を解決することを願っています。

+0

ええ、それは、ありがとうございました:) –

+0

それは、ありがとう! –

関連する問題