ホーム>source

着信接続を検証する方法 プライベート名前空間を作成する方法 イベントをクライアントに送信する前に、すべてのソケットでクライアントの役割を検証する方法

あなたの答え
  • 解決した方法 # 1

    ソケット接続に「承認」を設定できます。クライアントは、ハンドシェイクデータのクエリパラメータを介して認証トークンを送信します。次に、SocketAuthメソッドを使用して検証します。以下のコードサンプルを見て、それが役立つかどうか私に知らせてください

    <前>ウィズウィズ

    認証トークンを使用してソケットに接続する方法のクライアント側の例。

    <前>ウィズウィズ /** * Check authorization Here */ ioSocket.set('authorization', function (handshakeData, callback) { console.log("Inside Auth Handshake"); console.log(handshakeData._query); if (handshakeData._query && handshakeData._query.token) { var token = handshakeData._query.token; socketAuth(token, function (err, res) { if (err) { console.log(err); console.log("** Socket Authentication Done :" + false); return callback(null, false); } else { console.log(" *** Socket Authentication Done :" + res); return callback(null, res); } }); } else { console.log("*Socket Authentication connection: false , Done :" + false); return callback(null, false); } }); socketAuth = function (token, callback) { verifyToken(token, function (err, res) { // method to get the user of this token from the DB and validate the connection. if (err) { return callback(true, false); } else { return callback(null, res); } }); }

関連記事

  • 前へ java - JPAクエリ:サブクエリをグループ化条件に結合する
  • 次へ javascript - jqueryのリストからアイテムを削除すると機能しません