私の質問が具体的ではないことは承知していますが、私の問題について話し合いたいと思います。
laravel を使用して angular でソーシャル ログインを行いたいので、satelizer ソーシャル ログインを使用しています。ログインとログアウトは正常に機能していますが、プロファイルをクリックするとエラーが表示されます。どこに問題があるのかわからない。誰かが解決策を持っているなら、私を助けてください。エラーは
私のコードは:-
角度のあるルート
$stateProvider.state('profile', {
url: '/profile',
templateUrl: 'partials/profile.html',
controller: 'ProfileCtrl',
resolve: {
loginRequired: loginRequired
}
});
プロファイル コントローラ
angular.module('MyApp')
.controller('ProfileCtrl', function($scope, $auth, toastr, Account) {
$scope.getProfile = function() {
Account.getProfile()
.then(function(response) {
$scope.user = response.data;
})
.catch(function(response) {
toastr.error(response.data.message, response.status);
});
};
$scope.getProfile();
アカウントサービス
angular.module('MyApp')
.factory('Account', function($http) {
return {
getProfile: function() {
return $http.get('/satellizer/examples/server/php/public/api/me');
},
updateProfile: function(profileData) {
return $http.put('/satellizer/examples/server/php/public/api/me', profileData);
}
};
});
Laravel ルート // API ルート。
Route::get('api/me', ['middleware' => 'auth', 'uses' => 'UserController@getUser']);
Laravelコントローラー
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Config;
use Firebase\JWT\JWT;
use App\User;
class UserController extends Controller {
/**
* Generate JSON Web Token.
*/
protected function createToken($user)
{
$payload = [
'sub' => $user->id,
'iat' => time(),
'exp' => time() + (2 * 7 * 24 * 60 * 60)
];
return JWT::encode($payload, Config::get('app.token_secret'));
}
/**
* Get signed in user's profile.
*/
public function getUser(Request $request)
{
$user = User::find($request['user']['sub']);
return $user;
}