我有一个应用程序,我希望限制连接客户端通过线路发送的消息的最大大小.由于Node.js中消息的理论最大值约为1.9 GB,因此,如果某些恶意客户端尝试发送超大数据包,我实际上从不希望我的应用程序分配大量内存.
如何限制传入的邮件大小,比如1024字节?
对于将来寻找此问题答案的任何人,请使用maxPayload服务器配置中的选项来限制节点读取消息之前的消息大小(这几乎总是您想要的)
const wss = new WebSocket.Server({
clientTracking: true,
maxPayload: 128 * 1024, // 128 KB
path: "/learn",
//....
})
Run Code Online (Sandbox Code Playgroud)
每个字符的长度为 1 到 3 个字节。因此,从技术上讲,您只需对字符串进行子串即可获得所需的长度。
var limited = fullString.substring(0, 1024);
Run Code Online (Sandbox Code Playgroud)
或者你可以使用这样的包:utf8-binary-cutter
| 归档时间: |
|
| 查看次数: |
2917 次 |
| 最近记录: |