Changes

Jump to navigation Jump to search
632 bytes added ,  20:19, 11 November 2019
| '''Errors'''
|{{Error|invalid|#Errors}} the string contains invalid XML characters.
|}
 
==web:forward==
 
{{Mark|Introduced with Version 9.3:}}
 
{| width='100%'
|-
| width='120' | '''Signatures'''
|{{Func|web:forward|$path as xs:string|element(rest:forward)}}<br/>{{Func|web:forward|$path as xs:string, $parameters as map(*)|element(rest:forward)}}
|-
| '''Summary'''
|Creates a server-side [[RESTXQ#Forwards and Redirects|RESTXQ forward request]] to the specified {{Code|$path}}. The client will not get notified of this forwarding.<br/>The {{Code|$parameter}} argument is processed as described in [[#web:create-url|web:create-url]].
|-
| '''Examples'''
|
The function call <code><nowiki>web:forward('/a/b')</nowiki></code> creates the following result (which will be interpreted as forwarding if RESTXQ is used):
<pre class="brush:xml">
<rest:forward>/a/b</rest:forward>
</pre>
|}
| '''Examples'''
|
* The query <code><nowiki>web:redirect('/a/b')</nowiki></code> returns the following result (which will be interpreted as redirection if RESTXQ is used):
<pre class="brush:xml">
<rest:response xmlns:rest="http://exquery.org/ns/restxq">
</http:response>
</rest:response>
</pre>
* The first RESTXQ function creates an initial database, and redirects to a second function that will access this database:
<pre class="brush:xquery">
declare %updating %rest:path('/app/init') function local:init() {
db:create('app', <root/>, 'root.xml'),
db:output(web:redirect('/app/main'))
};
 
declare %rest:path('/app/main') function local:update() {
'Stored documents: ' || count(db:open('app'))
};
</pre>
|}
|-
| '''Summary'''
|Raises an error with the QName {{Code|rest:error}}, the specified {{Code|$message}} and the specified {{Code|$status}} as error value. <br/>Calls to this function are equivalent to <code>fn:error(xs:QName('rest:error'), $message, $status)</code>. See [[RESTXQ#Raise XQuery Errors|RESTXQ: Raise XQuery Errors]] for further details)to learn how the function is helpful in web applications.
|-
| '''Examples'''
|
* <code><nowiki>web:erorerror(404, "The requested resource cannot be found.")</nowiki></code>|-| '''Errors'''|{{Error|status|#Errors}} The supplied status code is invalid.
|}
;Version 9.3
* Added: [[#web:error|web:error]], [[#web:forward|web:forward]]
;Version 9.2
Bureaucrats, editor, reviewer, Administrators
13,550

edits

Navigation menu