2016-07-23 7 views
2

私はREST-APIをテストしています。私のREST-controllerで私のDefaultTestControllerSymfony2 - REST APIのテスト中にカスタムヘッダーを取得する方法

$client = static::createClient(); 
$crawler = $client->request(
     'GET', 
     "someurl", 
     [], 
     [], 
     [ 
      'HTTP_X_AUTH_TOKEN' => $clientAuthToken, 
     ] 
    ); 

では、私はx-auth-tokenヘッダ

$request = Request::createFromGlobals(); 
$authToken = $request->headers->get('x-auth-token'); 

を取得するために待っているが、私にはありません。私は間違っていますか?代わりに新しい空のものを作成するので

public function someAction(Request $request) 
{ 
    $authToken = $request->headers->get('x-auth-token'); 
} 

:あなたが例に従うなどのメソッドに渡す現在のリクエストにアクセスすることができ、あなたのREST-CONTROLLERで

+0

私はFOSRestBundleを使用しています。ネイティブアプリケーション(RESTではない)で同じことをすると、すべてがOKです。しかし、私がFOSRestBundleを介してREST APIリクエストをテストしているとき、私はカスタムヘッダーを失ってしまいました。 –

答えて

1

ホープのこのヘルプ

+1

うん、あなたは絶対に正しいです!リクエストオブジェクトを取得するためにCreateFromGlobal()を使うべきではありませんが、私はアクション1から使うべきです。これは、私の場合のように、このコントローラの非ウェブ呼び出し、例えばテストのために起こります。 –

関連する問題