<web:env_param name="..." /
>
<web:path_info/
>
<web:query_string/
>
<web:request_uri/
>
<web:request_host/
>
<web:server_root/
>
<web:redirect
>
<web:url_encode string="..."/
>
<web:url_decode string="..."/
>
<web:header
>
AxKit::XSP::WebUtils - Utilities for building XSP web apps
Add the taglib to AxKit (via httpd.conf or .htaccess):
AxAddXSPTaglib AxKit::XSP::WebUtils
Add the web:
namespace to your XSP <xsp:page
> tag:
<xsp:page language="Perl" xmlns:xsp="http://apache.org/xsp/core/v1" xmlns:web="http://axkit.org/NS/xsp/webutils/v1" >
Then use the tags:
<web:redirect> <web:uri>foo.xsp</web:uri> </web:redirect>
The XSP WebUtils taglib implements a number of features for building web applications with XSP. It makes things like redirects and getting/setting headers simple.
All of the below tags allow the parameters listed to be either passed
as an attribute (e.g. <web:env_param name="PATH"
>), or as a child
tag:
<web:env_param> <web:name>PATH</web:name> </web:env_param>
The latter method allows you to use XSP expressions for the values.
<web:env_param name="..." /
>
Fetch the environment variable specified with the name parameter.
<b>Server admin: <web:env_param name="SERVER_ADMIN"/></b>
<web:path_info/
>
Returns the current PATH_INFO value.
<web:query_string/
>
Returns the current query string
<web:request_uri/
>
Returns the full URI of the current request
<web:request_host/
>
This tag returns the end-user-visible name of this web service
Consider www.example.com on port 80. It is served by a number of machines named abs, legs, arms, pecs and foo1, on a diversity of ports. With a proxy server in front that monkies with the headers along the way. It turns out that, while writing a script, people often wonder "How do I figure out the name of the web service that's been accessed?". Various hacks with uname, hostname, HTTP headers, etc. ensue. This function is the answer to all your problems.
<web:server_root/
>
Returns the server root directory, aka document root.
<web:redirect
>
This tag allows an XSP page to issue a redirect.
Parameters (can be attributes or child tags):
Example (uses XSP param taglib):
<web:redirect secure="yes"> <web:uri><param:goto/></web:uri> </web:redirect>
<web:url_encode string="..."/
>
Encode the string using URL encoding according to the URI specification.
<web:url_decode string="..."/
>
Decode the URL encoded string.
<web:header
>
This tag allows you to get and set HTTP headers.
Parameters:
Example:
<p> Your browser is: <web:header name="HTTP_USER_AGENT"/> </p>
Matt Sergeant, matt@axkit.com
Original code by Steve Willer, steve@willer.cc
This software is Copyright 2001 AxKit.com Ltd.
You may use or redistribute this software under the terms of either the Perl Artistic License, or the GPL version 2.0 or higher.