2016-08-22 10 views
1

私はイオンでアプリを作っており、バックエンドはLaravelで作られています。私はパスワードリセット機能に取り組んでおり、私はクロムのエンドポイントをテストしているときに上記のエラーが発生し続ける。これは、連絡先情報関数のコードです:Laravel/angular - 400 bad request

sendContactConfirmation: function(contact, reset) { 
     var defer = $q.defer(); 

     if(reset == 'reset'){ 
     var endpointUrl = $http.post(AppSettings.apiUrl + "https://stackoverflow.com/users/reset", { phone: contact }); 
     } 
     else { 
     var endpointUrl = $http.post(AppSettings.apiUrl + "/users", { phone: contact }); 
     } 

     endpointUrl.then(function(result) { 
     service.set(result.data.user); 
     defer.resolve(result); 
     }, function(error) { 
     defer.reject(error); 
     }); 

     return defer.promise; 
    }, 

そして、これらは私のLaravelバックエンドでのルートです:

Route::group(['jwt.auth', ['except' => ['authenticate']], 'prefix' => 'api', 'namespace' => 'Api'], function() { 
    Route::post('authenticate', '[email protected]'); 
    Route::get('authenticate/user', '[email protected]'); 

    Route::post('users', '[email protected]'); 
    Route::post('users/reset', '[email protected]'); 
    Route::put('users/{user}/reset', '[email protected]'); 
    Route::put('users/{user}', '[email protected]'); 
    Route::put('users/{user}/activate', '[email protected]'); 
    Route::post('users/{user}/pic', '[email protected]'); 
}); 

そして、これがresetContact機能である:

public function resetContact(Request $request) 
    { 
     $this->validate(
      $request, 
      ['phone' => 'required|regex:/^[0-9]{8}$/'] 
     ); 

     $user = User::where('phone', $request->get('phone'))->firstOrFail(); 

     if ($user) { 
      try { 

       $this->sendValidationCode($user, 'reset'); 
      } 
      catch (\Exception $e) { 
       throw new ApiException($e->getMessage(), 500); 
      } 
     } 

     return response()->json([ 
      'user' => $user, 
     ]); 
    } 

私はこの400 Bad Requestエラーをなぜ受け取るのですか?

+1

どのようにクロムのエンドポイントを正確にテストしていますか?郵便配達員? –

+1

ここに400回の呼び出しで応答を貼り付けることはできますか?...ブラウザの開発者コンソールのネットワークのセクションで確認できます – Rene

答えて

0

Laravel JWTを使用する場合は、必ずjwt.authの下のすべてのルートのトークンを送信してください。そうでない場合は、エラー= 400トークンが提供されません。 ionicでは、このエラーを回避するために、ラーバルエンドポイントへの呼び出しごとにトークが提供されていることを確認してください。

関連する問題