使用 Laravel Pusher 和 Jquery 的實(shí)時(shí)聊天應(yīng)用程序
Pusher 是一個(gè)基于云的平臺(tái),使開發(fā)人員能夠快速創(chuàng)建實(shí)時(shí) Web 和移動(dòng)應(yīng)用程序。Laravel Pusher 因其簡(jiǎn)單易用而被廣泛使用。在這篇博客中,我們將詳細(xì)了解什么是 Laravel 中的 Pusher、它的功能,以及有關(guān)如何使用 Pusher Laravel 和 Jquery 構(gòu)建實(shí)時(shí)聊天應(yīng)用程序的教程。
Laravel 推送器介紹
Pusher 是一種托管服務(wù),可以在 Web 和移動(dòng)應(yīng)用程序中使用實(shí)時(shí)數(shù)據(jù)。Laravel Pusher 具有許多特性,使其成為構(gòu)建實(shí)時(shí)應(yīng)用程序的熱門選擇。以下是 Pusher 的一些主要功能:
實(shí)時(shí)消息傳遞: Pusher 支持客戶端和服務(wù)器之間的實(shí)時(shí)消息傳遞,允許開發(fā)人員構(gòu)建實(shí)時(shí)更新的實(shí)時(shí)應(yīng)用程序。
通道: Pusher 使用通道來管理客戶端和服務(wù)器之間的數(shù)據(jù)通信。通道用于按類型對(duì)數(shù)據(jù)進(jìn)行分組,使開發(fā)人員更容易管理他們的數(shù)據(jù)。
Webhooks: Pusher 提供了 webhooks,可以在某些事件發(fā)生時(shí)接收實(shí)時(shí)通知。這對(duì)于在實(shí)時(shí)聊天應(yīng)用程序中觸發(fā)操作很有用。
身份驗(yàn)證: Pusher 提供身份驗(yàn)證機(jī)制,使開發(fā)人員能夠保護(hù)他們的實(shí)時(shí)應(yīng)用程序。
存在: Pusher 的存在通道為開發(fā)人員提供了一種在實(shí)時(shí)應(yīng)用程序中跟蹤用戶狀態(tài)的方法。狀態(tài)通道有助于構(gòu)建用戶狀態(tài)、用戶列表和在線/離線狀態(tài)等功能。
Laravel 推送通道的類型
Pusher 為開發(fā)人員提供了四種類型的通道,供他們?cè)趯?shí)時(shí)應(yīng)用程序中使用:
公共頻道:這些頻道對(duì)所有人開放;任何用戶都可以訂閱它們而無需任何身份驗(yàn)證。公共頻道適合廣播每個(gè)人都能看到的事件。
私人頻道:這些頻道僅供經(jīng)過身份驗(yàn)證的用戶訪問。您可以使用私人渠道發(fā)送只有特定用戶才能看到的敏感信息。
Presence Channels:這些頻道類似于私人頻道,但也提供有關(guān)誰當(dāng)前訂閱了該頻道的信息。在線狀態(tài)通道對(duì)于構(gòu)建實(shí)時(shí)聊天應(yīng)用程序、在線協(xié)作工具和多人游戲非常有用。
加密通道:這些通道為客戶端和服務(wù)器之間發(fā)送的消息提供端到端加密。加密通道對(duì)于處理敏感數(shù)據(jù)或需要高安全性的應(yīng)用程序很有用。
開發(fā)人員可以根據(jù)其應(yīng)用程序的用例和安全要求選擇合適的通道類型。Pusher 的通道類型提供了一系列選項(xiàng)以滿足各種需求,并使開發(fā)人員能夠快速輕松地構(gòu)建實(shí)時(shí)應(yīng)用程序。
如何創(chuàng)建推送賬戶
1.前往Pusher的 Pusher 網(wǎng)站。
2.點(diǎn)擊頁面右上角的“注冊(cè)”按鈕。
3.使用您的姓名、電子郵件地址和密碼填寫注冊(cè)表。
4.單擊“創(chuàng)建帳戶”按鈕。
5.您將收到來自 Pusher 的確認(rèn)郵件。單擊電子郵件中的鏈接以驗(yàn)證您的電子郵件地址并激活您的帳戶。
6.一旦您的帳戶被激活,您就可以登錄到 Pusher 儀表板并開始使用 Pusher 的實(shí)時(shí)通信基礎(chǔ)設(shè)施來構(gòu)建您的應(yīng)用程序。
如何在 Pusher Laravel 中創(chuàng)建應(yīng)用程序
1.登錄您的 Pusher 帳戶并轉(zhuǎn)到儀表板。
2.單擊“創(chuàng)建新應(yīng)用”按鈕。
3.使用您的應(yīng)用名稱、描述和您將使用的技術(shù)(例如,JavaScript、React、iOS 等)填寫表格。
4.選擇您要為您的應(yīng)用使用的集群(Pusher 提供位于不同區(qū)域的不同集群,以優(yōu)化您的用戶的性能)。
5.單擊“創(chuàng)建應(yīng)用程序”按鈕創(chuàng)建您的應(yīng)用程序。
創(chuàng)建應(yīng)用程序后,Pusher 將為您提供應(yīng)用程序 ID、API 密鑰和 API 密鑰。您將需要這些憑據(jù)才能在您的應(yīng)用程序中使用聊天推送器 API 和庫。您可以在“應(yīng)用程序密鑰”選項(xiàng)卡下的應(yīng)用程序儀表板中找到這些憑據(jù)。
創(chuàng)建應(yīng)用程序后,您可以配置要在應(yīng)用程序中使用的設(shè)置和功能。例如,您可以創(chuàng)建通道、配置 webhook、設(shè)置身份驗(yàn)證等。Pusher 的文檔提供了有關(guān)如何在您的應(yīng)用程序中使用 Pusher 的功能的詳細(xì)指南和示例。
想要使用 Laravel Pusher 和 Jquery 創(chuàng)建一個(gè)動(dòng)態(tài)的實(shí)時(shí)聊天應(yīng)用程序?
準(zhǔn)備好擁有一個(gè)無縫且用戶友好的頂級(jí)聊天應(yīng)用程序。立即行動(dòng),聘請(qǐng)Laravel 開發(fā)人員立即開始實(shí)時(shí)聊天應(yīng)用程序!
使用 Laravel Pusher 和 JQuery 的聊天應(yīng)用程序示例
在這個(gè)Laravel Pusher教程中,我們將看到如何在 Laravel 中使用 Pusher 創(chuàng)建一個(gè)實(shí)時(shí)聊天應(yīng)用程序。
第 1 步:安裝包
將應(yīng)用憑據(jù)配置到您的 .env 文件
第 2 步:創(chuàng)建路線
第 3 步:使用 Laravel Pusher 和 Jquery 發(fā)送消息
查詢:
var message = '你好,這是我的第一條實(shí)時(shí)消息';$.ajax({
類型:“發(fā)布”,
緩存:錯(cuò)誤,
數(shù)據(jù)類型:'json',
網(wǎng)址:'{{路線(“pusher.sendmessage”)}}',
內(nèi)容類型:假,
過程數(shù)據(jù):假的,
數(shù)據(jù):{消息:消息},
標(biāo)題:{
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content')
},
成功:功能(結(jié)果){
如果(結(jié)果.response_code == 1){
alert("消息已發(fā)送");
}別的{
alert("發(fā)送消息失敗");
}
},
錯(cuò)誤:函數(shù)(){
alert("發(fā)生錯(cuò)誤請(qǐng)稍后再試");
}});
拉維爾:
使用 Pusher\Pusher;使用驗(yàn)證器;類 pusherController 擴(kuò)展控制器{
公共功能 sendMessage(請(qǐng)求 $request){
$return_data['response_code'] = 0;
$return_data['message'] = '出了點(diǎn)問題,請(qǐng)稍后再試。';
$rules = ['message' => 'required'];
$messages = ['message.required' => '請(qǐng)輸入消息進(jìn)行交流。'];
$validator = Validator::make($request->all(), $rules, $messages);
如果 ($validator->fails()) {
$message = implode("
", $validator->messages()->all());
$return_data['消息'] = $消息;
返回 $return_data;
}
嘗試 {
$選項(xiàng)= [
'cluster' => env('PUSHER_APP_CLUSTER'),
'useTLS' => 真
];
$pusher = 新的 Pusher(
環(huán)境('PUSHER_APP_KEY'),
環(huán)境('PUSHER_APP_SECRET'),
環(huán)境('PUSHER_APP_ID'),
$選項(xiàng)
);
$response = $pusher->trigger('my-chat-channel', 'my-new-message-event', ['message' => $request->message]);
如果($響應(yīng)){
$return_data['response_code'] = 1;
$return_data['消息'] = '成功。';
}
} catch (\Exception $e) {
$return_data['消息'] = $e->getMessage();
}
返回 $return_data;
}}
第 4 步:訂閱頻道并收聽事件
結(jié)論
Pusher 是一個(gè)強(qiáng)大的平臺(tái),使開發(fā)人員能夠快速輕松地構(gòu)建實(shí)時(shí) Web 和移動(dòng)應(yīng)用程序。它的一系列功能和直觀的聊天 Pusher API 使其成為尋求構(gòu)建實(shí)時(shí)應(yīng)用程序的開發(fā)人員的熱門選擇。無論您是在構(gòu)建實(shí)時(shí)聊天應(yīng)用程序、協(xié)作工具還是多人游戲,Laravel Pusher 都能提供實(shí)現(xiàn)它所需的基礎(chǔ)設(shè)施和工具。利用我們的Laravel 開發(fā)服務(wù)可以幫助您集成 Pusher 并構(gòu)建交互式、協(xié)作和高性能的應(yīng)用程序。今天聯(lián)系我們了解更多。
(言鼎科技)