Real-time सूचनाहरू पृष्ठ रिफ्रेस गर्न आवश्यकता बिना प्रयोगकर्ताहरूलाई तत्काल अलर्ट र अद्यावधिकहरू प्रदान गर्न वेब अनुप्रयोगहरूमा एक सामान्य सुविधा हो। मा Laravel, तपाईं सजिलै संग सूचनाहरू कुशलतापूर्वक Redis लागू गर्न एकीकृत गर्न सक्नुहुन्छ। सर्भरबाट ग्राहकलाई तुरुन्तै सूचनाहरू डेलिभर गर्न लामको रूपमा प्रयोग गरिनेछ। real-time Redis
स्थापना Redis र Laravel
सुरु गर्नको लागि, Redis आफ्नो सर्भरमा स्थापना गर्नुहोस् र कम्पोजर मार्फत predis/predis
प्याकेज स्थापना गर्नुहोस्। Laravel
composer require predis/predis
Real-time सूचनाहरू एकीकृत गर्दै
लाममा कन्फिगर गर्नुहोस् Laravel
पहिले, फाइलमा जानकारी Laravel थपेर लाम कन्फिगर गर्नुहोस् । Redis .env
QUEUE_CONNECTION=redis
REDIS_HOST=127.0.0.1
REDIS_PASSWORD=null
REDIS_PORT=6379
एउटा सिर्जना गर्नुहोस् Event
सूचनाहरू पठाउन एक event इन सिर्जना गर्नुहोस्। Laravel real-time
php artisan make:event NewNotificationEvent
त्यसपछि, फाइल खोल्नुहोस् app/Events/NewNotificationEvent.php
र event सामग्री अनुकूलन गर्नुहोस्।
use Illuminate\Broadcasting\Channel;
use Illuminate\Contracts\Broadcasting\ShouldBroadcastNow;
use Illuminate\Queue\SerializesModels;
class NewNotificationEvent implements ShouldBroadcastNow
{
use SerializesModels;
public $message;
public function __construct($message)
{
$this->message = $message;
}
public function broadcastOn()
{
return new Channel('notifications');
}
}
कन्फिगर गर्नुहोस् Broadcast Driver
फाइल खोल्नुहोस् config/broadcasting.php
र सूचनाहरू redis
लागू गर्न ड्राइभर प्रयोग गर्नुहोस् । real-time Redis
'connections' => [
'redis' => [
'driver' => 'redis',
'connection' => 'default',
],
// ...
],
Real-time सूचना पठाउनुहोस्
जब तपाईंलाई सूचना पठाउन आवश्यक छ real-time, event तपाईंले भर्खरै नियन्त्रक वा सेवा प्रदायकमा सिर्जना गर्नुभएको प्रयोग गर्नुहोस्।
use App\Events\NewNotificationEvent;
public function sendNotification()
{
$message = 'You have a new notification!';
event(new NewNotificationEvent($message));
}
Real-time ग्राहकमा सूचना ह्यान्डल गर्नुहोस्
अन्तमा, जाभास्क्रिप्ट र इको real-time प्रयोग गरेर क्लाइन्टमा सूचना ह्यान्डल गर्नुहोस्। Laravel सुनिश्चित गर्नुहोस् कि तपाईंले Laravel आफ्नो अनुप्रयोगको लागि इको स्थापना र कन्फिगर गर्नुभएको छ।
// Connect to the 'notifications' channel
const channel = Echo.channel('notifications');
// Handle the event when receiving a real-time notification
channel.listen('.NewNotificationEvent',(notification) => {
alert(notification.message);
});
निष्कर्ष
एकीकृत गर्दै Redis र तपाइँलाई तपाइँको वेब अनुप्रयोगमा सूचनाहरू Laravel सजिलै तैनात गर्न अनुमति दिन्छ । real-time जब त्यहाँ नयाँ सूचना हुन्छ, अनुप्रयोगले यसलाई मार्फत पठाउनेछ Redis, र ग्राहकले पृष्ठलाई रिफ्रेस नगरीकन तुरुन्तै सूचना प्राप्त गर्नेछ। यसले प्रयोगकर्ता अनुभवलाई सुधार गर्छ र अनुप्रयोगको अन्तरक्रियात्मकता बढाउँछ।