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_201...
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 > >