[Pywps-dev] pywps - json output
Sylvain Beorchia
sylvain.beorchia at gmail.com
Sat Oct 22 14:42:11 PDT 2016
Hi all,
Trying to build my first WPS, i want to return JSON outputs. After many
tests, i always got some JSON encoded chars embeded in XML, or clear JSON
embeded in XML...always XML.
Here is the simple code i've tried :
import json
from pywps import Process, LiteralInput, LiteralOutput, OGCUNIT, UOM,
ComplexInput, ComplexOutput, Format, FORMATS
class Test(Process):
def __init__(self):
inputs = [LiteralInput('name', 'Input name', data_type='string')]
outputs = [ComplexOutput('out', 'Referenced Output',
supported_formats=[Format('application/geojson')])]
super(Test, self).__init__(
self._handler,
identifier='cartogsm',
title='Process Test',
version='1.0.0.0',
inputs=inputs,
outputs=outputs,
store_supported=True,
status_supported=True
)
def _handler(self, request, response):
data = json.loads('["foo", {"bar":["baz", null, 1.0, 2]}]')
out_bytes = json.dumps(data, indent=2)
response.outputs['out'].output_format = 'application/json'
response.outputs['out'].data = out_bytes
return response
Ouput :
...
<wps:ProcessOutputs>
<wps:Output>
<ows:Identifier>out</ows:Identifier>
<ows:Title>Referenced Output</ows:Title>
<wps:Data>
<wps:ComplexData mimeType="application/geojson">
<![CDATA[
WwogICJmb28iLCAKICB7CiAgICAiYmFyIjogWwogICAgICAiYmF6IiwgCiAgICAgIG51bGwsIAogICAgICAxLjAsIAogICAgICAyCiAgICBdCiAgfQpd
]]>
</wps:ComplexData>
</wps:Data>
</wps:Output>
</wps:ProcessOutputs>
</wps:ExecuteResponse>
How can i return only JSON, with no XML at all ?
Thank you.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.osgeo.org/pipermail/pywps-dev/attachments/20161022/3bea0e48/attachment.html>
More information about the pywps-dev
mailing list