我有一个使用 node.js 构建的聊天客户端,我想知道在将消息发送到服务器之前应该如何输入消息?
问问题
371 次
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 回答