YouTubeでAngular JSをエンドツーエンドで使用することに関するDavid Mosherのチュートリアルに従おうとしています: http://www.youtube.com/watch?v=hqAyiqUs93c。
/auth/login および auth/logout の URL を認証サービスにルーティングしようとするまでは、すべてがうまくいっていました (ビデオの 14:30 あたり)。ログインしようとすると、404 Not Found エラーが表示されます。ルートの URL をいじってみましたが、役に立ちませんでした。MySQL と Laravel を使用して MAMP でローカルに実行しています。
これがroutes.phpの私のコードです
Route::get('/', function(){
return View::make('index');
});
Route::post('/auth/login/', 'AuthController@login');
Route::get('/auth/logout/', 'AuthController@logout');
および AuthController の私のコード
<?php
class AuthController extends BaseController {
public function login()
{
if(Auth::attempt(array('email' => Input::json('email'), 'password' => Input::json('password'))))
{
return Response::json(Auth::user());
} else {
return Response::json(array('flash' => 'Invalid username or password'), 500);
}
}
public function logout()
{
Auth::logout();
return Response::json(array('flash' => 'Logged Out!'));
}
}
最後に、認証サービスのコード
angular.module("epicApp")
.factory('AuthenticationService', function($http, $location){
return{
login: function(credentials){
return $http.post("/auth/login/", credentials);
},
logout: function(){
return $http.get("/auth/logout/");
}
}
})