Есть ли способ сохранить метку времени Unix в буфере NodeJS? - PullRequest
0 голосов
/ 19 сентября 2019

Необходимо создать буфер из метки времени UNIX, чтобы сохранить его на блокчейне bsv.Пробовал это решение:

let buffer = Buffer.allocUnsafe(10);
buffer.writeUInt16BE(Date.now());

Но получаю ошибку:

RangeError [ERR_OUT_OF_RANGE]: The value of "value" is out of range. It must be >= 0 and <= 65535. Received 1568909911723
    at checkInt (internal/buffer.js:35:11)
    at writeU_Int16BE (internal/buffer.js:653:3)
    at Buffer.writeUInt16BE (internal/buffer.js:661:10)

1 Ответ

0 голосов
/ 20 сентября 2019

Попробуйте:

    let bignum = require('bignum');
    let opts= {endian:'big',size:6 /*6-byte / 48-bit*/}
    let dt = Date.now();
    console.log(dt);
    let num = bignum(dt.toString());
    var buf = num.toBuffer(opts);
    let a = bignum.fromBuffer(buf,opts)
    console.log(a.toNumber());

Прочтите также: nodejs записывает 64-разрядное целое число без знака в буфер .Будет полезно понять основную концепцию.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...