node.js を使用して構築したチャット クライアントがありますが、サーバーに送信する前にメッセージを入力するにはどうすればよいでしょうか?
2 に答える
2
何もない。クライアントが「悪い」ものを送信するのを止めることはできません。検証とクリーニングはサーバーで実行する必要があります。クライアントに表示するときは、クリーン/フィルター/エンコードする必要があります。
多分(クライアント側):
socket.on('message', function(e) {
txt = e.data;
// HTML encode
txt = txt.replace(/&/g, '&');
txt = txt.replace(/</g, '<');
txt = txt.replace(/>/g, '>');
// Or strip tags
txt = txt.replace(/<[^>]+>/g, '');
// Or create a text node
node = document.createTextNode(txt);
});
于 2013-03-10T19:31:26.467 に答える
1
フィルタリングに関しては、サーバーに送信する前に実際に何もする必要はありません。サーバー側でフィルタリング/検証を行う必要があります。あなたがそれをした場合、クライアント側の人々はそれを簡単に回避することができます。
于 2013-03-10T19:31:03.520 に答える