[英]How to effectively protect routes in combination with react-router and passport on the backend
[英]Can I and how to protect my react-router routes with laravel passport
我找不到有關 react 和 laravel 身份驗證的文檔,但是我在論壇上看到有人在使用護照,因此我也使用了它。 目前我有access_token,我可以用passport 的中間件保護laravel 路由,但是我如何保護react-router 路由?
目前我正在考慮使用 'universal-cookie' 中的 Cookie 將令牌作為 cookie 傳遞給管理儀表板組件,並從那里運行 axios 請求以檢查令牌是否有效。 如果授予訪問權限,我可以顯示儀表板,以其他方式顯示“拒絕訪問”元素。 但這不是路由保護,我想知道如何正確執行
var bodyFormData = new FormData;
bodyFormData.append('name', this.state.name);
bodyFormData.append('password', this.state.password);
axios({
method: 'post',
url: '/api/login',
data: bodyFormData,
config: { headers: {'Content-Type': 'multipart/form-data' }}
})
.then(function (response) {
var cookies = new Cookies();
cookies.set('access_token', response.data.access_token, { path: '/' });
})
.catch(function (response) {
alert(response)
});
通常,這樣做的方法是用自定義組件包裝標准Route
組件,並將您的身份驗證邏輯放在那里。
請參閱此帖子以獲取一個很好的示例: https : //tylermcginnis.com/react-router-protected-routes-authentication/
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.