Asked thg 7 10, 2020 3:31 SA 499 0 3
  • 499 0 3
0

Dùng cookie để authentication pasport laravel ??

Share
  • 499 0 3

Hiện tại mỗi lần mình request lên api đều phải add một cái header có Authentication = Bearer token ... cái này cứ phải lập đi lập lại khá khó chịu@@
Mình có add thử token vào cookie và request lên api mình dùng passport để authen nhưng toàn bị trả lỗi 401!
không biết là laravel passport có cơ chế nào authen bằng cookie không ??

3 ANSWERS


Answered thg 7 10, 2020 7:15 SA
Accepted
+1

bạn lưu token vào storage hoặc cookie, rồi set global token của axios

ở đây họ cũng có cách giải quyết này https://stackoverflow.com/questions/43051291/attach-authorization-header-for-all-axios-requests

Share
Answered thg 7 10, 2020 3:40 SA
+1

Bạn có thể config để mọi request từ client lên server đều gắn header Authentication. Đỡ bị lặp lại.

Dùng axios:

axios.interceptors.request.use(function (config) {
    const token = store.getState().session.token;
    config.headers.Authorization =  token;

    return config;
});

Nếu ajax:

$.ajaxSetup({
    beforeSend: function(xhr) {
        xhr.setRequestHeader('Authorization', '...');
    }
});
Share
Answered thg 7 10, 2020 3:32 SA
0

Bạn có thể thư viện Guzzle Http http://docs.guzzlephp.org/en/stable/

Share
Avatar Tú Trâm @Trungdao
thg 7 10, 2020 3:35 SA

cái này hình như là cho php client?? mình request từ js client nên chắc là k dùng được 😃

0
| Reply
Share
Avatar Dương Mạnh Hoàng @duong.manh.hoang
thg 7 10, 2020 3:38 SA

@Trungdao thế bạn có thể dùng axios

0
| Reply
Share
Viblo
Let's register a Viblo Account to get more interesting posts.