...should work!
So, to avoid having the web server compress content at runtime, it appears that I can do this:
declare
%rest:path('/test-binary')
%rest:GET
function w:test-binary()
{
web:response-header(map {'media-type': 'application/json'}, map {'Content-Encoding': 'gzip'})
, db:retrieve('test-binary', 'out.bin')
};
where out.bin contains gzipped json text.
I would then serve the gzipped resource if Accept-Encoding contains deflate or gzip and otherwise serve the text resource.
Is there any problem with that approach?
Kendall
On 11/16/16, 10:35 AM, "basex-talk-bounces@mailman.uni-konstanz.de on behalf of Kendall Shaw" <basex-talk-bounces@mailman.uni-konstanz.de on behalf of kendall.shaw@workday.com> wrote:
Thank you. I’m using tomcat, not for any particular reason. There I added:
compression=”on”
compressableMimeType="text/html,text/xml,text/plain,text/ css,text/javascript, application/javascript, application/json"
to the connector element in server.xml. For now, that’s good enough. Eventually, I’ll want to figure out how to store a compressed resource and serve that if compression is request.
Kendall
On 11/16/16, 1:45 AM, "Christian Grün" <christian.gruen@gmail.com> wrote:
Hi Kendall,
This is usually handled by the web server (by default, Jetty). Maybe this helps?
https://urldefense.proofpoint.com/v2/url?u=http-3A__blog. max.berger.name_2010_01_jetty- 2D7-2Dgzip-2Dfilter.html&d= DgIFaQ&c=DS6PUFBBr_ KiLo7Sjt3ljp5jaW5k2i9ijVXllEdO ozc&r=JgwnBEpN1c-DDmq- Up2QMq9rrGyfWK0KtSpT7dxRglA&m= 6JsUJinjuwLxS__ 1HSp55O2G4zm8DoUtTk-zEVzV8cQ& s=ZWuB0REriC5VtRp4dTHd- HoaJ70qXUAVfj49wV_AggI&e=
Cheers,
Christian
On Wed, Nov 16, 2016 at 2:29 AM, Kendall Shaw <kendall.shaw@workday.com> wrote:
> I should clarify that I’m asking about content negotiation. %rest:produces
> is described as constraining based on the Accept header. Should I explicitly
> look for Accept-Encoding and produce binary data that is in one of the
> requested compressed formats, or is there something in basex’s restxq
> implementation that does this?
>
>
>
> Kendall
>
>
>
> From: <basex-talk-bounces@mailman.uni-konstanz.de > on behalf of Kendall Shaw
> <kendall.shaw@workday.com>
> Date: Tuesday, November 15, 2016 at 4:58 PM
> To: BaseX <basex-talk@mailman.uni-konstanz.de >
> Subject: [basex-talk] Restxq handling accept-encoding
>
>
>
> To return compressed text data, should I explicitly look for Accept-Encoding
> and use java to deflate or gzip output of
> convert:binary-to-string(db:retrieve(…))?
>
>
>
> Kendall
>
>