2017-03-09 11 views
0

の認証私はsocketio-jwtを設定するために、複数のチュートリアルに従ってきましたが、毎回私がこの部分を過ぎて届かないようです:socketio-JWT:SocketIOに接続され、

Connected to SocketIO, Authenticating

任意のアイデア?

クライアント側:

<h1>Socket Connection Status: <span id="connection"></span></h1> 

<script type="text/javascript"> 
    $(document).ready(function() { 
     socketIOConnectionUpdate('Requesting JWT Token from Laravel'); 

     $.ajax({ 
      url: 'http://localhost:8000/token?id=1' 
     }) 
     .fail(function (jqXHR, textStatus, errorThrown) { 
      socketIOConnectionUpdate('Something is wrong on ajax: ' + textStatus); 
     }) 
     .done(function (result, textStatus, jqXHR) { 

      socketIOConnectionUpdate('Connected to SocketIO, Authenticating') 
      /* 
      make connection with localhost 3000 
      */ 
      var token = result.token; 
      var socket = io.connect('http://localhost:3000'); 
      socket.on('connect', function() { 
       socket 
       .emit('authenticate', {token: token}) //send the jwt 
       .on('authenticated', function() { 
        console.log('authenticated'); 
        socketIOConnectionUpdate('Authenticated'); 
       }) 
       .on('unauthorized', function(msg) { 
        socketIOConnectionUpdate('Unauthorized, error msg: ' + msg.message); 
        throw new Error(msg.data.type); 
       }) 
      }); 
     }); 
    }); 

    /* 
    Function for print connection message 
    */ 
    function socketIOConnectionUpdate(str) { 
     $('#connection').html(str); 
    } 

サーバー側

​​3210

答えて

0

あなたはそれの戻り値を使用しようとしているとしてあなたは、どのようにdotenv作品誤解した可能性があります。

Dotenvは環境変数を.envファイルからprocess.envにロードするゼロ依存モジュールです。

から:dotenv github

代わりに、それはprocess.envの一部として利用できるようになり、環境変数として../.envにあるファイルに格納された変数を、エクスポートします。

ので、代わりにこの:

var dotenv = require('dotenv').config({path:'../.env'}); 
socketioJwt.authorize({ 
    secret: dotenv.JWT_SECRET, 
    timeout: 100 
}) 

この

// do this near the entry point to your application!! 
require('dotenv').config({path:'../.env'}); 

socketioJwt.authorize({ 
    secret: process.env.JWT_SECRET, 
    timeout: 100 
}) 
+0

は、あなたの答えをありがとうください。私はまだ同じエラーを受けています。 – Z0q

関連する問題