Geert Josten wrote:

  Hi,

> Can you give some kind of test case? I thought MarkLogic should
> be able to handle multipart requests properly..

  Sure.  Let's consider the example 5.2 in the RFC 2387 for
instance, at http://tools.ietf.org/html/rfc2387#section-5.2.  If
you post it to the following query (using your favorite HTTP
tool):

    xquery version "1.0-ml";

    <results> {
      for $b in xdmp:get-request-body()
      return
        <result> {
          (: Transform binary() to xs:base64Binary :)
          (: To avoid type error, cannot add binary() to element :)
          if ( $b instance of document-node() and
               $b/node() instance of binary() ) then
            xs:base64Binary($b/node())
          else
            $b
        }
        </result>
    }
    </results>

then I get the following result (only one body):

    <results><result>LS1leGFtcGxlLTIKQ29udGV [...]</result></results>

  I've truncated it here, but when I base64-decode the returned
result, I get back the entire multipart request entity content
(AKA its "body").  Which means that in that case, the multipart is
not decoded, it is returned to the query as a big binary chunck.

  So I wonder if there is another API call to get the decoded
multipart content (in the above example as three different
contents, one text and 2 binary pictures), or if there is a
library to rather decode the big binary returned by
xdmp:get-request-body()?

  Regards,

-- 
Florent Georges
http://fgeorges.org/
http://h2oconsulting.be/
_______________________________________________
General mailing list
[email protected]
http://developer.marklogic.com/mailman/listinfo/general

Reply via email to