[英]Laravel : Auth check with javascript
我有以下用於url的代碼,如果url擁有了invited_by
則在提供的頁面(如http://streamkar.dev/store/?invited_by=1
的鏈接中顯示注冊彈出窗口,它基本上是顯示注冊彈出窗口。
$(document).ready(function(){
var a = window.location.href.toString();
var b = a.split("invited_by=");
if(typeof b[1] !=="undefined"){
console.log(b[1]);
$("#login-modal").modal('show');
$(".signin").click();
}
});
我想要的是我們如何檢查用戶身份驗證,即如果用戶已經登錄,則:
節目 :
http://streamkar.dev/store
代替 :
http://streamkar.dev/store/?invited_by=1
基本上,可以將邀請鏈接提供給某人,如果他/她已經登錄,則只顯示該頁面,如果沒有,則顯示彈出窗口進行注冊,然后重定向到url中的頁面,它基本上是邀請。
我怎么能做到這一點,我沒有提出一些合適的邏輯。
您可以嘗試以下類似方法,
在controller
,檢查用戶登錄的AND查詢是否具有invited_by
參數,如果是IF,則重定向到store
ELSE呈現view
。
public function getIndex(Request $request)
{
if (Auth::check() && $request->has('invited_by')) {
return redirect('/store');
} else {
return view('path_to_view')
->with('userLogged', Auth::check());
}
}
如果用戶未登錄,則在.blade
文件中,呈現modal
html。
@if (! $userLogged)
<div id="login-modal"></div> //model html
@endif
在javascript
,顯示modal
,如果DOM有ID的div login-modal
if(typeof b[1] !=="undefined" && $("#login-modal").length > 0){
$("#login-modal").modal('show');
$(".signin").click();
}
您需要做的是從控制器功能存儲中檢查用戶是否已通過身份驗證
if (Auth::check()) {
return redirect()->to('store')
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.