ある種のタイプ属性でタグ付けすることにより、サーバーからのバイナリメッセージを識別する方法はありますか?
背景: node.js を使用しており、クライアントにバイナリ メッセージを送信しています。現時点では、これらは blob として送信される画像のみです。したがって、クライアント側では、着信メッセージを Blob のインスタンスでテストしてから、写真で何かを行います。
しかし、今では、.txt などの他のファイルを websocket プロトコル経由で (ダウンロード用に) 送信したいと考えています。これは HTTP リクエストなどよりもはるかに簡単だと思います。しかし、画像、テキストファイル、または sth の場合、着信バイナリ メッセージを区別する必要があります。そうしないと。
Chrome Developertools は、受信した画像 (blob) の type 属性が空の文字列であることを示しています。私が読んだように、この属性は読み取り専用なので、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エンコーディングは私には不可能です。