2016-05-15 17 views
0

So habe ich ein Skript Buchse io verwenden, einen node.js Server und eine redis Warteschlange für ein Live-Chat in LaravelSocket.io in Laravel 5 Chat

Ich habe ein alles funktioniert und die redis Warteschlange Eingabe akzeptieren, ich kann es sehen, wenn i 'redis-cli Monitors verwenden jedoch die Nachrichten in die Buchse Ansicht

die socket.blade.php

@extends('layouts.admin') 

@section('content') 
<script src="//code.jquery.com/jquery-1.11.2.min.js"></script> 
<script src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script> 
<script src="https://cdn.socket.io/socket.io-1.3.4.js"></script> 

<div class="container"> 
    <div class="row"> 
     <div class="col-lg10 col-lg-offset-2" > 
      <div id="messages" ></div> 
     </div> 
    </div> 
</div> 
<script> 
    var socket = io.connect('http://localhost:8890'); 
    socket.on('message', function (data) { 
     $("#messages").append("<p>"+data+"</p>"); 
    }); 
</script> 


@endsection 

socketController.php

ausgegeben arent
<?php 

namespace SocialNet\Http\Controllers; 
use SocialNet\Http\Requests; 
use SocialNet\Http\Controllers\Controller; 
use Request; 
use LRedis; 

class SocketController extends Controller { 
    public function __construct() 
    { 
     $this->middleware('auth'); 
    } 
    public function index() 
    { 
     return view('socket'); 
    } 
    public function writemessage() 
    { 
     return view('writemessage'); 
    } 
    public function sendMessage(){ 
     $redis = LRedis::connection(); 
     $redis->publish('message', Request::input('message')); 
     return redirect('writemessage'); 
    } 
} 

Was fehlt mir hier?

Jede Hilfe willkommen

Antwort

1

ich in meinem Browser-Konsole überprüft und festgestellt, dass es sich um eine Verbindung verweigert Fehler war. Ich überprüfte dann die clientseitige Verbindung zur socket.io und änderte die Verbindung zur IP der VM, auf der der Knotenserver lief, von http://localhost und es funktionierte perfekt!