Толкатель с аутентификацией Laravel 5

Я делаю приложение с Live Chat в Laravel 5 и следую этому уроку, https://github.com/dazzz1er/confer/tree/master Я уже выполнил все из них, но у меня ошибка в веб-консоли:

введите описание изображения здесь

Похоже, что он делает вызов Ajax на мой URL Http: //localhost/joene_/public/index.php/auth и так как у меня нет маршрута для обработки этого запроса, он говорит 404. Я не знаю, должен ли сделать маршрут для него, но что я буду там кодировать? Я понятия не имею. Учебник даже не упоминает об этом.

Спасибо

4

Решение

Всякий раз, когда вы звоните Auth::check()Laravel проверит, аутентифицирован ли пользователь, проверив информацию о его сеансе.

Как насчет толкатель? Как они узнают, какие пользователи в настоящее время вошли в ваше приложение laravel?

Ответ лежит в вызове Ajax http://localhost/joene_/public/index.php/auth,

По указанному выше URL-адресу ваша установка laravel позволит вашему приложению Pusher связываться с сеансом laravel ваших пользователей.

Давайте углубимся в некоторый код:

1) Pusher Auth Controller

class PusherController extends Controller {

//accessed through '/pusher/'
//setup your routes.php accordingly

public function __construct() {
parent::__construct();
//Let's register our pusher application with the server.
//I have used my own config files. The config keys are self-explanatory.
//You have received these config values from pusher itself, when you signed up for their service.
$this->pusher = new Pusher(\Config::get('pusher.app_key'), \Config::get('pusher.app_secret'), \Config::get('pusher.app_id'));
}

/**
* Authenticates logged-in user in the Pusher JS app
* For presence channels
*/
public function postAuth()
{
//We see if the user is logged in our laravel application.
if(\Auth::check())
{
//Fetch User Object
$user =  \Auth::user();
//Presence Channel information. Usually contains personal user information.
//See: https://pusher.com/docs/client_api_guide/client_presence_channels
$presence_data = array('name' => $user->first_name." ".$user->last_name);
//Registers users' presence channel.
echo $this->pusher->presence_auth(Input::get('channel_name'), Input::get('socket_id'), $user->id, $presence_data);
}
else
{
return Response::make('Forbidden',403);
}
}
}

2) JS используется с Pusher

//replace 'xxx' below with your app key
var pusher = new Pusher('xxx',{authEndpoint : '/pusher/auth'});
var presenceChannelCurrent = pusher.subscribe('presence-myapp');
presenceChannelCurrent.bind('pusher:subscription_succeeded', function() {
alert(presenceChannelCurrent.members.me.info.name+' has successfully subscribed to the Pusher Presence Channel - My App');
});

Надеюсь, это поможет вам.

8

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector