Changes

Jump to navigation Jump to search
106 bytes added ,  06:53, 29 November 2019
This [[Module Library|XQuery Module]] contains functions for retrieving information on an HTTP request that has triggered the query. It is mainly mostly useful in the context of when building [[Web Application]]s.
The module is related to Adam Retter’s based on the [http://exquery.github.com/expath-specs-playground/request-module-1.0-specification.html EXQuery Request Module] draft.
=Conventions=
* The module will be available if the {{Code|basex-api}} library is found in the classpath. This is the case if you use one of the complete distributions of BaseX (zip, exe, war).
* All functions are assigned to the <code><nowiki>http://exquery.org/ns/request</nowiki></code> namespace, which is statically bound to the {{Code|request}} prefix. Prior to {{Version|9.2}}, the module needed to be imported in the query prolog:<pre class="brush:xquery">import module namespace request = "http://exquery.org/ns/request";...</pre>
* If any of the functions is called outside the servlet context, <code>[[XQuery Errors#BaseX Errors|basex:http]]</code> is raised.
|-
| '''Summary'''
|Returns the Query component of the URI of an HTTP request. If no query has been specifiedcomponent exists, an empty sequence is returned.
|-
| '''Example'''
|-
| width='120' | '''Signatures'''
|{{Func|request:cookie|$name as xs:string|xs:string*?}}<br/>{{Func|request:cookie|$name as xs:string, $default as xs:string|xs:string}}
|-
| '''Summary'''
=Attribute Functions=
==request:attribute-names== {{Mark|Introduced with BaseX 9.3:}}
{| width='100%'
|-
| width='120' | '''Signatures'''
|{{Func|request:attribute-names|$name as xs:string|xs:string*}}
|-
| '''Summary'''
|Returns the value names of an attribute of the all HTTP request. If the attribute does not exist, an empty sequence is returned.|-| '''Example'''|* {{Code|request:attribute("javax.servlet.error.request_uri")}} returns the original URI of a caught error.* {{Code|request:attribute("javax.servlet.error.message")}} returns the error message of a caught errorattributes.
|}
==request:attribute-names==
{{Mark|Introduced Updated with BaseX 9.3:}}return type generalized, default argument added.
{| width='100%'
|-
| width='120' | '''Signatures'''
|{{Func|request:attribute-names|$name as xs:string|item()*}}<br/>{{Func|request:attribute|$name as xs:string, $default as item()*|item()*}}
|-
| '''Summary'''
|Returns the names value of all an attribute of the HTTP request attributes. If the attribute does not exist, an empty sequence or the optionally specified default value is returned instead.|-| '''Example'''|* {{Code|request:attribute("javax.servlet.error.request_uri")}} returns the original URI of a caught error.* {{Code|request:attribute("javax.servlet.error.message")}} returns the error message of a caught error.
|}
* Added: [[#request:attribute-names|request:attribute-names]], [[#request:set-attribute|request:set-attribute]]
* Updated: [[#request:attribute|request:attribute]]: return type generalized, default argument added
;Version 7.9
Bureaucrats, editor, reviewer, Administrators
13,550

edits

Navigation menu