Javascript 防止更换Windows.WebSocket
我怎样才能防止这样的事情Javascript 防止更换Windows.WebSocket,javascript,Javascript,我怎样才能防止这样的事情 var realSocket = window.WebSocket; class WebSocket { constructor(src) { console.log("binded..."); this.ws = new realSocket(src); this.fakeMsgCb = () => {}; this.ws.onmessage = (data) => this.ms
var realSocket = window.WebSocket;
class WebSocket {
constructor(src) {
console.log("binded...");
this.ws = new realSocket(src);
this.fakeMsgCb = () => {};
this.ws.onmessage = (data) => this.msg(data);
}
set onopen(cb) {
this.ws.onopen = cb;
}
set onclose(cb) {
this.ws.onclose = cb;
}
msg(data) {
console.log("incoming ->", data);
this.fakeMsgCb(data);
}
send(data) {
console.log("outgoing ->", data);
this.ws.send(data);
}
set onerror(cb) {
this.ws.onerror = cb;
}
set onerror(cb) {
this.ws.onerror = cb;
}
set onmessage(cb) {
this.fakeMsgCb = cb;
}
get readyState() {
return this.ws.readyState;
}
}
window.WebSocket = WebSocket;
可以粘贴在控制台或浏览器用户脚本中,然后他们可以轻松地记录数据?别担心,我知道我不能信任客户端,这并不是为了隐藏任何安全问题或其他任何东西,但我只是想让读取传入和传出数据变得更难一些用户可以使用浏览器的开发工具更轻松地记录web套接字数据。不用麻烦了。@Ryan我所有的数据都是二进制的,所以他们不能保证您使用https连接到客户端,那么WebSocket将相应地使用wss连接,而不是简单的wsconnection@ScottStensland这并不能阻止使用RFC6455指定wss运行安全的代码记录和发送假数据。。。数据是加密发送的。。。只有TLS证书持有者才能解密