2017-06-29 3 views
0

PhpunitとSymfonyでエンドポイントをテストする際に問題が発生しています。問題は、テストを行うためのnelmio api doc、郵便配達員、またはアンドロイドにあるクライアント側からでも正しく認証できることです。SymfonyのJWTトークンでAPIエンドポイントをテストできません

しかし私がphpunitでエンドポイントをテストしようとすると、401 Unauthorizedメッセージが出ます。ここで

私はPHPUnitの機能テストから作るのリクエストです:

$this->client->request('POST', '/api/v1/recipes',$data,array(),array(),$header); 

そして、ここでは、ヘッダの内容です:

$header = array(
     'Authorization'=> 'Bearer '.$token, 
     'CONTENT_TYPE' => 'application/json', 
    ); 

私はまたHTTP_AUTHORIZATIONキーでみましたが、ありますどちらもうまくいきません。

組み込みのSymfonyサーバーを使用していますが、これが重要かどうかはわかりません。なぜなら、ヘッダーを使用してApacheで作業するときにいくつかの問題が発生しているからです。

ちなみに、jwt.ioオンラインデコーダーで二重チェックして、トークンが正しく形成されています。

私は一種の絶望的です。どんな助けも素晴らしいでしょう。

答えて

0

この変更しよう:これまで

$header = array(
    'Authorization'=> 'Bearer '.$token, 
    'CONTENT_TYPE' => 'application/json', 
); 

:まだ動作していない

$header = array(
    'HTTP_Authorization' => sprintf('%s %s', 'Bearer', $token), 
    'HTTP_CONTENT_TYPE' => 'application/json', 
    'HTTP_ACCEPT'  => 'application/json', 
); 
+0

を... – Jotaeme

+0

あなたがエラーを取得するのですか? –

+0

私はアンドロイドクライアント、郵便配達員などからリクエストをすると、私は何も得られません。しかし、phpunitで機能テストをしようとすると、401 Unauthorizedエラーが出ます – Jotaeme

関連する問題