laravel broadcaastingでソケットアプリケーションをビルドしました。私は私のサーバースクリプトを作ってから、このスクリプトのようにHTTPSを追加しました:(それはメモリから書かれているので、コードがエラーを含む場合があります)その後Socket.io-auth - ペイロードリクエストから資格情報を隠す
var fs = require('fs');
var https = require('https');
var express = require('express');
var app = express();
var options = {
key: fs.readFileSync('./file.pem'),
cert: fs.readFileSync('./file.crt')
};
var serverPort = 3000;
var server = https.createServer(options, app);
var io = require('socket.io')(server);
require('socketio-auth')(io, {
authenticate: authenticate,
postAuthenticate: postAuthenticate,
disconnect: disconnect,
timeout: 1000
});
私はsocketio-AUTHを追加し、ちょうどユーザ名とパスワード認証のためにそれを修正しました。
function authenticate(socket, data, callback) {
if (data.username != "username") {
return callback(new Error("User not found"));
}
return callback(null, user.password == "password");
}
}
私の質問は、私はソケット経由で送信していcredntialsについてです。
import VueSocketio from 'vue-socket.io';
Vue.use(VueSocketio, socketio('https://socketserver.com:1923', {secure: true}));
var vm = new Vue({
sockets:{
connect: function(){
console.log('socket connected')
this.$socket.emit('authentication', {username : "username", password: "password"});
},
},
})
私は実際にvue-socketioでVueを使用していますが、接続や情報の取得/送信を実際に行っています。
問題私は、Google Chromeのコンソールに行くときに平文ソケットを取得すると、 ({認証:{ユーザー名: "ユーザー名"、パスワード: "パスワード"}})のような認証情報を出しています。
私はsslを使用しているときにその普通のことはありますか?私のコードに何か問題がありますか? または、この情報を自分で暗号化して解読する必要がありますか?
私はHTTPS経由で送信するすべてが暗号化されていると思っていました。
ur再生してください。ありがとう!