login & logout
login sempre funcionou logout já remove o token da local-storage logout já faz redirect para a página/component loginmaster
parent
092dcd496f
commit
fd9a6b7435
|
@ -1,44 +1,33 @@
|
|||
<?php
|
||||
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
define('YOUR_SERVER_URL', 'http://badmemory.test');
|
||||
// Check "oauth_clients" table for next 2 values:
|
||||
define('CLIENT_ID', '2');
|
||||
define('CLIENT_SECRET','KN0kCLNhCPFfjz8PTLqnaGU4Kn6qzu3ToRtcHIk5');
|
||||
|
||||
class LoginControllerAPI extends Controller
|
||||
namespace App\Http\Controllers\Auth;
|
||||
use App\Http\Controllers\Controller;
|
||||
use Illuminate\Foundation\Auth\AuthenticatesUsers;
|
||||
class LoginController extends Controller
|
||||
{
|
||||
public function login(Request $request)
|
||||
/*
|
||||
|--------------------------------------------------------------------------
|
||||
| Login Controller
|
||||
|--------------------------------------------------------------------------
|
||||
|
|
||||
| This controller handles authenticating users for the application and
|
||||
| redirecting them to your home screen. The controller uses a trait
|
||||
| to conveniently provide its functionality to your applications.
|
||||
|
|
||||
*/
|
||||
use AuthenticatesUsers;
|
||||
/**
|
||||
* Where to redirect users after login.
|
||||
*
|
||||
* @var string
|
||||
*/
|
||||
protected $redirectTo = '/home';
|
||||
/**
|
||||
* Create a new controller instance.
|
||||
*
|
||||
* @return void
|
||||
*/
|
||||
public function __construct()
|
||||
{
|
||||
$http = new \GuzzleHttp\Client;
|
||||
$response = $http->post(YOUR_SERVER_URL.'/oauth/token', [
|
||||
'form_params' => [
|
||||
'grant_type' => 'password',
|
||||
'client_id' => CLIENT_ID,
|
||||
'client_secret' => CLIENT_SECRET,
|
||||
'username' => $request->email,
|
||||
'password' => $request->password,
|
||||
'scope' => ''
|
||||
],
|
||||
'exceptions' => false,
|
||||
]);
|
||||
$errorCode= $response->getStatusCode();
|
||||
if ($errorCode=='200') {
|
||||
return json_decode((string) $response->getBody(), true);
|
||||
} else {
|
||||
return response()->json(['msg'=>'User credentials are invalid'], $errorCode);
|
||||
}
|
||||
$this->middleware('guest')->except('logout');
|
||||
}
|
||||
|
||||
public function logout()
|
||||
{
|
||||
echo "LC";
|
||||
\Auth::guard('api')->user()->token()->revoke();
|
||||
\Auth::guard('api')->user()->token()->delete();
|
||||
return response()->json(['msg'=>'Token revoked'], 200);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -34,11 +34,10 @@ class LoginControllerAPI extends Controller
|
|||
}
|
||||
|
||||
public function logout()
|
||||
{
|
||||
echo "LCAPI";
|
||||
\Auth::guard('api')->user()->token()->revoke();
|
||||
\Auth::guard('api')->user()->token()->delete();
|
||||
return response()->json(['msg'=>'Token revoked'], 200);
|
||||
}
|
||||
{
|
||||
\Auth::guard('api')->user()->token()->revoke();
|
||||
\Auth::guard('api')->user()->token()->delete();
|
||||
return response()->json(['msg'=>'OK LCI'], 200);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -46995,7 +46995,7 @@ exports = module.exports = __webpack_require__(2)(false);
|
|||
|
||||
|
||||
// module
|
||||
exports.push([module.i, "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n", ""]);
|
||||
exports.push([module.i, "\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n", ""]);
|
||||
|
||||
// exports
|
||||
|
||||
|
@ -47036,24 +47036,22 @@ Object.defineProperty(__webpack_exports__, "__esModule", { value: true });
|
|||
},
|
||||
methods: {
|
||||
logout: function logout() {
|
||||
console.log("estou dentro da logout function");
|
||||
// apagar o token da localStorage
|
||||
var logConfig = {
|
||||
var _this = this;
|
||||
|
||||
var head = {
|
||||
|
||||
headers: {
|
||||
'Authorization': 'Bearer ' + window.localStorage.getItem('access_token')
|
||||
// 'Accept' : 'application/json',
|
||||
'Authorization': 'Bearer ' + window.localStorage.getItem('token'),
|
||||
'Accept': 'application/json'
|
||||
}
|
||||
};
|
||||
console.log("antes do axios");
|
||||
console.log(logConfig);
|
||||
|
||||
axios.post('api/logout', null, logConfig).then(function (response) {
|
||||
axios.post('/api/logout', null, head).then(function (response) {
|
||||
if (response.status == 200) {
|
||||
window.localStorage.removeItem('access_token');
|
||||
window.localStorage.removeItem('token');
|
||||
console.log("Token removed");
|
||||
_this.$router.push('/login');
|
||||
}
|
||||
console.log(response);
|
||||
}).catch(function (error) {
|
||||
console.log(error);
|
||||
});
|
||||
|
@ -47072,7 +47070,9 @@ var render = function() {
|
|||
return _c("div", { staticClass: "container" }, [
|
||||
_c("div", { staticClass: "row" }, [
|
||||
_c("div", { staticClass: "col-md-8 col-md-offset-2" }, [
|
||||
_c("p", [_vm._v(_vm._s(_vm.message))]),
|
||||
_c("h1", [_vm._v("Logout")]),
|
||||
_vm._v(" "),
|
||||
_c("p", [_c("em", [_vm._v(_vm._s(_vm.message))])]),
|
||||
_vm._v(" "),
|
||||
_c(
|
||||
"div",
|
||||
|
|
|
@ -1,18 +1,18 @@
|
|||
<template>
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-md-8 col-md-offset-2">
|
||||
<p>{{message}}</p>
|
||||
<div class="text-left">
|
||||
<button class="btn btn-primary" v-on:click="logout()">Logout</button>
|
||||
<router-link class="btn btn-default" to="/users">Cancel</router-link>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col-md-8 col-md-offset-2">
|
||||
<h1>Logout</h1>
|
||||
<p><em>{{message}}</em></p>
|
||||
<div class="text-left">
|
||||
<button class="btn btn-primary" v-on:click="logout()">Logout</button>
|
||||
<router-link class="btn btn-default" to="/users">Cancel</router-link>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
|
||||
<script type="text/javascript">
|
||||
export default {
|
||||
data (){
|
||||
|
@ -26,26 +26,22 @@ export default {
|
|||
}
|
||||
},
|
||||
methods: {
|
||||
logout: function(){
|
||||
console.log("estou dentro da logout function");
|
||||
// apagar o token da localStorage
|
||||
let logConfig = {
|
||||
logout() {
|
||||
let head = {
|
||||
|
||||
headers: {
|
||||
'Authorization': 'Bearer ' + window.localStorage.getItem('access_token'),
|
||||
// 'Accept' : 'application/json',
|
||||
}
|
||||
};
|
||||
console.log("antes do axios");
|
||||
console.log(logConfig);
|
||||
headers: {
|
||||
'Authorization': 'Bearer ' + window.localStorage.getItem('token'),
|
||||
'Accept': 'application/json',
|
||||
},
|
||||
};
|
||||
|
||||
axios.post('api/logout', null, logConfig)
|
||||
axios.post('/api/logout', null, head)
|
||||
.then(response => {
|
||||
if(response.status == 200){
|
||||
window.localStorage.removeItem('access_token');
|
||||
window.localStorage.removeItem('token');
|
||||
console.log("Token removed");
|
||||
this.$router.push('/login');
|
||||
}
|
||||
console.log(response);
|
||||
}).catch(error => {
|
||||
console.log(error);
|
||||
});
|
||||
|
|
Loading…
Reference in New Issue