On Wed, Sep 14, 2011 at 5:40 PM, Stephan Beal <sgb...@googlemail.com> wrote:
> On Wed, Sep 14, 2011 at 5:31 PM, Martin S. Weber <martin.we...@nist.gov>wrote: > >> [1] http://www.w3.org/TR/wsdl#_**http <http://www.w3.org/TR/wsdl#_http> >> [2] http://www.w3.org/TR/wsdl > > > Thank you very much :). i'll go get myself more informed on the topic... > If i'm understanding correctly, WSDL requires that parameters passed to the server be form-urlencoded. That's not fundamentally a problem, but there is a current "conflict of interest" regarding who (fossil's core or the JSON bits) gets to parse the POST data (which we can only do once unless we buffer it into a Blob first). The current heuristics are: a) If the Content-Type of the request is application/json or text/plain then the json/cgi bits try to parse it as JSON. This makes it unavailable to fossil, as the json/cgi init bits must be run before fossil initializes its side of the CGI environment (because parts of the fossil internals - namely error reporting - now account for "JSON mode" and output a JSON error object). b) if the Content-Type is form-urlencoded or one of the fossil-specific types then fossil gets to process it. c) If we don't know the Content-Type then we ignore (neither consume nor parse) the POST data. This works so far, but will fail once we allow the JSON API to read form-urlencoded data (which it has code to do but it currently does do so not because that would interfere with (=completely break) ALL of fossil's POSTed form handling). In order to resolve this "conflict of interests" i need to add some code to the json/cgi bits (an external/independent library) to allow delayed reading of the POST data (it is currently done automatically at lib-init time, which ends up preempting fossil), so that the fossil code can properly decide who to feed the POST data to. Anyway... that's certainly more than anyone really wanted to know. -- ----- stephan beal http://wanderinghorse.net/home/stephan/
_______________________________________________ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users