2017-02-09 23 views
0

У меня есть маленький IHttpModule, который читает запрос POST с другого сервера и ретранслирует его. Ответ от удаленного сервера имеет заголовокНастройка HttpResponse.ContentEncoding для GZIP

Content-Encoding: gzip 

Как указать это в HttpResponse я возвращаюсь к абоненту? Content-Encoding определяется как тип текстового кодирования, поэтому он ожидает текстовую кодировку, такую ​​как UTF8.

context.Response.ContentEncoding = ???; 

Должен ли я игнорировать это и вручную устанавливать заголовок?

ответ

0

Если вы изменяете ответ, тогда вы должны, декодировать и читать содержимое, извлекать gzip и добавлять заголовок в ответ.

//Code for gzip the content and add header 
context.Response.Filter = new System.IO.Compression.GZipStream(
       context.Response.Filter, 
       System.IO.Compression.CompressionMode.Compress); 
context.Response.AppendHeader("Content-Encoding", "gzip"); 

Если ретрансляция ответа без каких-либо изменений, то не нужно ничего делать.