欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

Laravel中如何判斷用戶是否在線-創(chuàng)新互聯(lián)

這篇文章主要介紹了Laravel中如何判斷用戶是否在線,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

站在用戶的角度思考問題,與客戶深入溝通,找到猇亭網站設計與猇亭網站推廣的解決方案,憑借多年的經驗,讓設計與互聯(lián)網技術結合,創(chuàng)造個性化、用戶體驗好的作品,建站類型包括:網站設計、網站建設、企業(yè)官網、英文網站、手機端網站、網站推廣、域名與空間、網頁空間、企業(yè)郵箱。業(yè)務覆蓋猇亭地區(qū)。

在Laravel應用程序用戶個人資料頁面上,用戶名旁邊添加一個綠點,表示他們是否在線。我首先想到的是,我們將需要啟動一個node.js服務器并跟蹤每個用戶的活動套接字連接。然后用當前登錄的用戶套接字,我們可以實時更新在線狀態(tài)!的問題是,這是我們目前的要求,有點超過頂部,并沒有完全必要的,直到我們的功能,需要達到第二個準確性,如實時聊天。

一位同事指出,對于目前的需求,MySpace用來處理“在線”功能的方式可能就足夠了。就我們所知,MySpace用來顯示用戶是否在線的方式是基于他們在網站上的最后一項活動。如果他們的最后一次活動在X分鐘內,我們會顯示“在線”徽章,如果沒有,我們不會。簡單!

讓我們?yōu)橛脩舻纳洗位顒釉谟脩舯碇刑砑右粋€字段,并且在請求每個頁面時更新它。然后當我們需要檢查用戶是否在線,我們可以將該時間戳與當前時間戳進行比較,如果在X分鐘內,則他們在線!雖然這可以工作得很好,這取決于你正在構建的應用程序,它會向數(shù)據庫添加不必要的 寫入 ,這會在某種程度上降低你應用程序的速度。一個好的折衷辦法是將這些信息存儲在應用程序緩存中。 緩存的好處是可以簡化這種方法,因為可以設置緩存為過期。

現(xiàn)在我們決定使用緩存實現(xiàn)這個特性,下一個問題是這個代碼應該在哪里運行,以便它在每個請求上運行?我有兩個想法可以實現(xiàn):

  1. 創(chuàng)建一個 BaseController,讓你所有的 Controller 都繼承它

  2. 創(chuàng)建一個中間件

經過一些思考,并意識到我需要在所有已經編寫的構造函數(shù)中添加對父構造函數(shù)的調用,我選擇在中間件中實現(xiàn)。

我們有個計劃,讓我們進入代碼!

首先,我們需要創(chuàng)建一個中間件。在終端中輸入以下命令:

php artisan make:middleware LogLastUserActivity

接下來我們打開以下php文件

app/Http/Middleware/LogLastUserActivity.php.

在其中的 handle 方法中添加下面的代碼:

if(Auth::check()) {
  $expiresAt = Carbon::now()->addMinutes(5);
  Cache::put('user-is-online-' . Auth::user()->id, true, $expiresAt);
}

接下來,我們打開 app/Http/Kernel.php 文件。如果您使用的是 Laravel 5.1 或 更早的版本, 您應該把代碼直接放置到 $middleware數(shù)組中。 如果您的版本是 5.2.* , 您應該把代碼放置到 $middlewareGroups 的 web 中 。注意,一定要把代碼放到 StartSession 中間件的下方,否則 Auth 門面將不會正確在user中記錄log。我的更新配置設置如下:

protected $middlewareGroups = [
  'web' => [
    \App\Http\Middleware\EncryptCookies::class,
    \Illuminate\Cookie\Middleware\AddQueuedCookiesToResponse::class,
    \Illuminate\Session\Middleware\StartSession::class,
    \Illuminate\View\Middleware\ShareErrorsFromSession::class
    \App\Http\Middleware\VerifyCsrfToken::class,
    \App\Http\Middleware\LogLastUserActivity::class,
  ],
  'api' => [
    'throttle:60,1',
  ],
];

最后一步是添加一個方法到我們的 user 對象中去檢測這個值. 在 app/User.php 我們添加下面的方法:

public function isOnline()
{
  return Cache::has('user-is-online-' . $this->id);
}

現(xiàn)在在任何頁面中你就能添加下面的方法:

@if($user->isOnline())
  user is online!!
@endif

重要提示 -- 確保在你的文件頂部使用 use 引入所有的 facades!

感謝你能夠認真閱讀完這篇文章,希望小編分享的“Laravel中如何判斷用戶是否在線”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián)網站建設公司,,關注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關知識等著你來學習!

文章題目:Laravel中如何判斷用戶是否在線-創(chuàng)新互聯(lián)
網址分享:http://www.aaarwkj.com/article38/dpjjpp.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供網站營銷、域名注冊、定制網站、用戶體驗、網站制作、虛擬主機

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

成都app開發(fā)公司
国产黄色片子在线观看| 免费在线观看97视频| 欧美一区二区三在线| 自拍偷拍亚洲另类激情| 日韩一日韩一区二区三电影在线观看 | 熟女高潮av一区二区| 精品人妻av中文字幕| 国产成人精品福利一区二区| 国产黄色av网站在线| 一区二区三区四区在线视频观看| 日本高清精品视频在线| 日韩欧美一区二区三级| 亚洲福利一区福利三区| 麻豆黄片在线免费观看| 国产一区二区三区性色| 综合国产精品久久久久久| av在线日韩国产精品| 国产精品蜜臀av在线一区| 色综合视频二区偷拍在线| 国产黄片一区二区在线| 免费国产污网站在线观看| 国产精品一区二区三区日本| 久久九九亚洲欧美中文字幕| 亚洲区一区二区三区亚洲| 日本国内一区二区三区四区视频| 麻豆国产97在线精品一区| 亚洲日本韩国美女二区| 人妻伦理一区二区三区| 国产欧美日韩一级二级三级| 自拍偷拍一区蜜桃视频| 女同av免费观看网站| 欧美精品亚洲二区中文乱码| 欧美另类不卡在线观看| 亚洲一区免费在线视频| 国产女同一区二区三区久久| 精品国产乱码久久蜜桃| 国产三级伦理在线播放| av免费在线观看大全| 四虎精品视频在线免费| 中文字幕一区二区三区精彩视频| 婷婷不卡中文字幕三区|