GZip строка для вывода из Coldfusion приводит к «ошибке кодирования содержимого» в браузерах

Я пытаюсь GZip-архивировать содержимое переменной для вывода в браузер. Для начала я делаю это очень просто и не беспокоюсь о браузерах, не поддерживающих gzip. Также я собрал это из исследования нескольких методов, которые я смог найти в Интернете. Некоторые из них от людей, которые, возможно, читают этот вопрос. CF: 9-Dev
Веб-сервер: Apache


РЕШЕНИЕ

<cfsavecontent variable="toGZIP"><html><head><title>Test</title></head><body><h1>Fear my test</h1></body></html></cfsavecontent>

<cfscript>
ioOutput = CreateObject("java","java.io.ByteArrayOutputStream");
gzOutput = CreateObject("java","java.util.zip.GZIPOutputStream");

ioOutput.init();
gzOutput.init(ioOutput);

gzOutput.write(toGZIP.getBytes(), 0, Len(toGZIP.getBytes()));

gzOutput.finish();
gzOutput.close();
ioOutput.flush();
ioOutput.close();

toOutput=ioOutput.toByteArray();
</cfscript>

<cfheader name="Content-Encoding" value="gzip"><cfheader name="Content-Length" value="#ArrayLen(toOutput)#" ><cfcontent reset="yes" variable="#toOutput#" /><cfabort />
7
задан Tyler Clendenin 12 September 2010 в 17:01
поделиться