@dhdfshs

Как орезать данные в переменной на количество байт?

В общем вопрос не из простых.

Использую curl и не хочу отключать заголовки выдачи.
Поэтому ответ от сервера приходит в виде заголовок+тело
Телом может быть как текст так и картика или бинарник.

Status Code:  200
Headers:  [ { result: { version: 'HTTP/1.1', code: 200, reason: 'OK' },
    Server: 'nginx',
    Date: 'Tue, 25 Sep 2018 09:16:20 GMT',
    'Content-Type': 'image/png',
    'Content-Length': '1727',
    Connection: 'close',
    'Last-Modified': 'Thu, 21 Dec 2017 23:49:29 GMT',
    ETag: '"5a3c4889-6bf"',
    Expires: 'Sat, 24 Nov 2018 09:16:20 GMT',
    'Cache-Control': 'public, max-age=5184000',
    'Access-Control-Allow-Origin': '*',
    'Accept-Ranges': 'bytes' } ]
Headers length:  1
Body length:  2061
METHOD:  GET
Header length: 371


Тут происходят странные вещи

По идее Body length вычесть 'Content-Length' должно получится Header length:

Но нихрена
Видимо функция length в javascript не справляется с задачей вычисления длины в батах.

Есть переменная

var body = 'header+body';

В ней хранится заголовк сервера и данные, возможно и бинарные.

Как узнать размер переменной body в байтах?
Как обрезать body с начала на нужное количество байт?

Я уже проверил функции substring, length - не работают.
  • Вопрос задан
  • 120 просмотров
Пригласить эксперта
Ответы на вопрос 1
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы