Вы можете использовать ArrayBuffer
для хранения двоичных данных, а затем преобразовать ArrayBuffer в шестнадцатеричную строку.Чтобы получить необработанное тело от requesttify, вы должны будете использовать свойство .body
вместо функции getBody()
, согласно их документации .
.что такое тип необработанного тела и при необходимости преобразуйте его в ArrayBuffer.
// ...
var obj = response.body; // Get the raw body
var arrayBuffer = new TextEncoder().encode (obj); // Convert String data to ArrayBuffer (might need to be changed)
var hexString = bufferToHex (arrayBuffer);
// ...
function bufferToHex (buffer) {
return Array
.from (new Uint8Array (buffer))
.map (b => b.toString (16).padStart (2, "0"))
.join ("");
}
Обновление:
Поскольку, очевидно, requestify
не имеет никакого способа обработать необработанное телоданные, я предлагаю вам использовать node-fetch
, window.fetch
polyfill для nodeJS.
Ваш код с ним будет выглядеть следующим образом:
const fetch = require ("node-fetch");
fetch(yourUrl, {
method: 'GET'
}).then(function (response) {
return response.arrayBuffer ();
}).then(function (arrayBuf) {
const hexString = bufferToHex (arrayBuf);
// Do whatever you want
});