HTTP Client Module

From BaseX Documentation
Revision as of 18:36, 27 February 2011 by CG (talk | contribs)
Jump to navigation Jump to search

This module contains an XQuery Function to send HTTP requests and handle HTTP responses. The function send-request, which is introduced with the http: prefix, is linked to the http://expath.org/ns/http-client namespace and based on the EXPath HTTP Client Module:

http:send-request

Signatures http:send-request($request as element(http:request)) as item()+
http:send-request($request as element(http:request)?, $href as xs:string?) as item()+
Summary Sends an HTTP request and interprets the corresponding response.
Rules $request contains the parameters of the HTTP request like HTTP method and headers. In addition to this it can also contain the URI to which the request will be sent and the body of the HTTP method. If the URI is not given with the parameter $href, its value in $request is used instead. The structures of http:request, http:header and http:body elements follow the EXPath specification.

The attribute auth-method of $request is not considered in our implementation because we are handling only basic authentication. Furthermore, if any serialization parameters are provided in the http:body child of $request, they are always considered, i.e. the case when the src attribute is set, is not handled. Sending of multipart HTTP requests and handling of responses with content different from XML, HTML and text might be supported in future, depending on our user requests.