0

jquery ターミナルを socket.io で使用しようとしていますが、ログインを正しく機能させる方法がわかりません。

誰かが私を助けることができますか?

var terminal = $('#terminal').terminal(function(command, terminal) {
socket.emit('stdin', command);
},
{
login: function(username, password, callback) {
  var password =    CryptoJS.SHA1($('#login_password').val()).toString(CryptoJS.enc.Base64);
  socket.emit('stdin', "/login "+ username + " " + password);
  // should wait for a response then callback
},
greetings: "You are authenticated",
tabcompletion: true,
exit: false,
completion: function(terminal, command, callback) {
    callback(['/login']);
},
onBlur: function() {
    // the height of the body is only 2 lines initialy
    return false;
},
onClear: function() {
    // the height of the body is only 2 lines initialy
}
});
4

1 に答える 1

0

おそらく、ログインには標準入力とは異なるイベントを使用する必要があります。

login: function(username, password, callback) {
  var password = CryptoJS.SHA1($('#login_password').val()).toString(CryptoJS.enc.Base64);
  socket.emit('login', "/login "+ username + " " + password);
  socket.on('auth', function(token) {
      callback(token);
  });
}

次に、サーバーでログインイベントをリッスンし、トークンで認証イベントを送信します。

于 2015-02-12T15:35:09.230 に答える