Как просмотреть сжатые файлы brotli в браузере? - PullRequest
0 голосов
/ 06 апреля 2019

Я пытаюсь статически обслуживать сжатые файлы. Мне удалось сжать файлы с помощью этого кода:

// node.js
const compressStream = require("iltorb").compressStream;
const fs = require("fs");

const wrr = fs.createWriteStream("index-b.html");

fs.createReadStream("index.html")
  .pipe(compressStream())
  .pipe(wrr);

Итак, теперь файл index-b.html сжат. Но как я могу увидеть это в браузере?

Когда я захожу на эту страницу, вот что я вижу:

enter image description here

Я думал, что браузер поймет, что это зашифрованный файл. Но это не так. Когда я посмотрел на заголовки ответа,

HTTP/1.1 200 OK
server: ecstatic-3.3.1
cache-control: max-age=3600
last-modified: Sat, 06 Apr 2019 17:27:32 GMT
etag: W/"281474976993459-334-2019-04-06T17:27:32.047Z"
content-length: 334
content-type: text/html; charset=UTF-8
Date: Sat, 06 Apr 2019 17:36:49 GMT
Connection: keep-alive

кодировка не установлена. Как я могу решить это?

1 Ответ

0 голосов
/ 07 апреля 2019

Вы используете http-сервер , который является очень простым HTTP-сервером и не позволяет явно задавать кодировку содержимого.

Похоже, возникла проблема с добавлением поддержки Brotli , но она еще не завершена. Даже если это так, он предназначен только для обслуживания статических предварительно сжатых файлов (при условии, что он будет реализован так же, как опция --gzip).

Чтобы использовать динамический бротли, как вы хотите, вы должны использовать обычный код Node http.createServer или что-то вроде express .

...