Size: a a a

Laravel для начинающих

2020 March 21

Д

Дмитрий in Laravel для начинающих
Andrey Helldar
Мидлваря api на роуте есть?
на каком? где я токен присваиваю или там где данные получаю?
источник

НВ

Николай Воробьев... in Laravel для начинающих
правильно ли я понял что такой запрос можно использовать в модели и потом модель вызвать в контроллере передав данные во вьюху?
источник

AH

Andrey Helldar in Laravel для начинающих
Дмитрий
на каком? где я токен присваиваю или там где данные получаю?
На бэке. По которым фронт твой ходит
источник

Д

Дмитрий in Laravel для начинающих
Вот роут регистрации:
Route::post("/reg", "regaController@register");
|
V
$valData =  [
               "login" => $request->input("login"),
               "password" => $request->input("password")
           ];
           $valData['password'] = bcrypt($valData["password"]);
           $valData['role'] = 1;
           $user = User::create($valData);
           $accessToken = $user->createToken('authToken')->accessToken;
           return response(['user' => $user, 'access_token' => $accessToken]);



А вот получение данных
Route::middleware('auth:api')->get('/user', function (Request $request) {
   return $request->user();
});
|
V
public function data(Request $request)
   {
        return json_encode($request->user());
   }
источник

AH

Andrey Helldar in Laravel для начинающих
Дмитрий
Вот роут регистрации:
Route::post("/reg", "regaController@register");
|
V
$valData =  [
               "login" => $request->input("login"),
               "password" => $request->input("password")
           ];
           $valData['password'] = bcrypt($valData["password"]);
           $valData['role'] = 1;
           $user = User::create($valData);
           $accessToken = $user->createToken('authToken')->accessToken;
           return response(['user' => $user, 'access_token' => $accessToken]);



А вот получение данных
Route::middleware('auth:api')->get('/user', function (Request $request) {
   return $request->user();
});
|
V
public function data(Request $request)
   {
        return json_encode($request->user());
   }
Смотри, авторизация понятно - возвращается токен.
На получении данных ты передаешь заголовок Authorization: Bearer <полученный_токен>?
источник

Д

Дмитрий in Laravel для начинающих
Andrey Helldar
Смотри, авторизация понятно - возвращается токен.
На получении данных ты передаешь заголовок Authorization: Bearer <полученный_токен>?
Да! Но я его ставлю вручную при запуске axios
if (cookies.getItem("laravel_token")) {
   window.axios.defaults.headers.common['Authorization'] = "Bearer " + cookies.getItem("laravel_token");
}


но как я понял, это можно автоматизировать с помощью CreateFreshApiToken
источник

AH

Andrey Helldar in Laravel для начинающих
Дмитрий
Да! Но я его ставлю вручную при запуске axios
if (cookies.getItem("laravel_token")) {
   window.axios.defaults.headers.common['Authorization'] = "Bearer " + cookies.getItem("laravel_token");
}


но как я понял, это можно автоматизировать с помощью CreateFreshApiToken
CreateFreshApiToken вообще не при чем и он на бэке.
источник

AH

Andrey Helldar in Laravel для начинающих
Так, стоп
источник

AH

Andrey Helldar in Laravel для начинающих
Откуда ты вообще куки взял?
источник

Д

Дмитрий in Laravel для начинающих
Andrey Helldar
CreateFreshApiToken вообще не при чем и он на бэке.
window.axios.post("api/reg", payload)
       .then(response => {
        Cookies.set("laravel_token", response.data.access_token,{ expires: 365, path: '/', domain: '.homestead.loc' });
         //document.location.reload();
       })
источник

AH

Andrey Helldar in Laravel для начинающих
Дмитрий
Вот роут регистрации:
Route::post("/reg", "regaController@register");
|
V
$valData =  [
               "login" => $request->input("login"),
               "password" => $request->input("password")
           ];
           $valData['password'] = bcrypt($valData["password"]);
           $valData['role'] = 1;
           $user = User::create($valData);
           $accessToken = $user->createToken('authToken')->accessToken;
           return response(['user' => $user, 'access_token' => $accessToken]);



А вот получение данных
Route::middleware('auth:api')->get('/user', function (Request $request) {
   return $request->user();
});
|
V
public function data(Request $request)
   {
        return json_encode($request->user());
   }
Вот здесь ты возвращаешь return response(['user' => $user, 'access_token' => $accessToken]);

То есть, в теле сообщения у тебя придет инстанс юзера и токен. Это НЕ куки.
Тебе нужно куда-то сохранить этот токен и, впоследствии, подписывать им запросы.
источник

AH

Andrey Helldar in Laravel для начинающих
Так, уже лучше
источник

Д

Дмитрий in Laravel для начинающих
ну я так и делаю. ВОт я хотел узнать это правильно все делаю? либо это все как то автоматом делается
источник

AH

Andrey Helldar in Laravel для начинающих
Насколько я понял, делаешь правильно. И это так и делается.
источник

Д

Дмитрий in Laravel для начинающих
хм, просто в примере на сайте лары ничего подобного нет. Там сказано за createFreashApiToken
источник

Д

Дмитрий in Laravel для начинающих
я так понял, что это типо что бы не передавать этот заголовок
источник

AH

Andrey Helldar in Laravel для начинающих
)))
источник

AH

Andrey Helldar in Laravel для начинающих
Ага, бэк ментально поймет какой именно юзер к нему ломится?)))
источник

Д

Дмитрий in Laravel для начинающих
ну по кукам)
источник

Д

Дмитрий in Laravel для начинающих
ну ок, буду так делать
источник