有没有办法通过使用某种类型属性标记来自服务器的二进制消息来识别它们?
背景:我正在使用 node.js,我正在向我的客户端发送二进制消息。目前,这些只是作为 blob 发送的图片。所以在客户端我用 Blob 的实例测试传入的消息,然后用图片做一些事情。
但现在我还想通过 websocket 协议发送其他文件,如 .txt(用于下载)。我觉得这比 HTTP 请求等简单得多。但是现在我必须对传入的二进制消息做出改变,如果它们是图像或文本文件或某事。别的。
Chrome 开发者工具告诉我,我传入的图像(blob)有一个类型属性,它是一个空字符串。当我读到这个属性是只读的,所以我正在寻找一种解决方案来识别我的二进制消息,就像我可以使用 JSON 对象一样......
在此先感谢您的每一个想法:)
编辑:
这是向客户端发送图像的一个示例。我正在为 nodejs 使用“ws”模块。
fs.readFile(path, function (err, data)
{
if (!err)
{
connection.send(data, {binary: true}, function(err)
{
if (!err) console.log("Server finished sending image to client.");
else console.log("Error while sending imageto client.");
});
}
else console.log("Error while loading image");
});
我可以在哪里向二进制数据添加某种元数据?Base64 编码对我来说是不可能的。