Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

ns_geturl(3aolserv) [debian man page]

ns_geturl(3aolserver)					    AOLserver Built-In Commands 				     ns_geturl(3aolserver)

__________________________________________________________________________________________________________________________________________________

NAME
ns_geturl - commands SYNOPSIS
ns_geturl URL ?headersSetId? _________________________________________________________________ DESCRIPTION
This command retrieves the contents of the specified URL. The URL must be a remote http server, or a file relative to the pageroot (begins with /). It does not handle a relative request or follow redirects. The headerSetId option is a variable containing an ns_set Id (not expanded with a $) used to store the remote server headers (see example). ns_geturl only support HTTP version 1.0. EXAMPLES
set page [ns_geturl "www.aolserver.com"] ns_return 200 text/html $page This fetches the contents of www.aolserver.com and returns that page to the client. set headers [ns_set new] set page [ns_geturl "www.aolserver.com" headers] for {set i 0} {$i < [ns_set size $headers]} {incr i} { ns_puts "Key: [ns_set key $headers $i]" ns_puts "Value: [ns_set value $headers $i]" } This time, a blank headerset is passed to ns_geturl so we can retrieve the headers of the remote page, which we print out to the client. set file [ns_geturl "/foo/bar.html"] ns_return 200 text/html $file This example fetches the /foo/bar.html file relative to the pageroot and returns it to the client. SEE ALSO
nsd(1), info(n), ns_set(n), ns_httpget(n) KEYWORDS
AOLserver 4.0 ns_geturl(3aolserver)

Check Out this Related Man Page

ns_adp_registertag(3aolserver)				    AOLserver Built-In Commands 			    ns_adp_registertag(3aolserver)

__________________________________________________________________________________________________________________________________________________

NAME
ns_adp_registeradp, ns_adp_registerproc, ns_adp_registerscript, ns_adp_registertag, ns_register_adptag - ADP registered tags SYNOPSIS
ns_adp_registeradp tag ?endtag? adp ns_adp_registerproc tag ?endtag? proc ns_adp_registerscript tag ?endtag? script ns_adp_registertag tag ?endtag? adp ns_register_adptag tag ?endtag? script _________________________________________________________________ DESCRIPTION
These commands enable definition of HTML tags within an ADP file which are expanded and evaluated by the server before returning output to the client. Tags are defined as eitehr a single tag with options, e.g., <mytag a=b c=d> or as an opening/closing tag pair, e.g., <mytag> text </mytag>. This approach is an alternative to direct calls via the <% script %> syntax as described in the ns_adp man page. ns_adp_registeradp tag ?endtag? adp ns_adp_registertag tag ?endtag? adp These commands are identical and register an ADP code fragment to be invoked when the specified tag is encountered while parsing an ADP. The tag argument specifies the tag that will trigger invocation of the ADP fragment, which is specified by the adp argument. If the endtag argument is specified, then the ADP fragment will be invoked with two arguments: The first will be the enclosed con- tent, and the second will be the name of an ns_set with any attributes specified in the tag. If no endtag argument is specified, the ADP fragment will only be passed the name of the ns_set. The arguments may be retrieved using ns_adp_bindargs or ns_adp_argc and ns_adp_argv. When the ADP fragment is invoked, its result is inserted in the output instead of the tag (or, if the endtag was specified, in place of the tag, end tag, and the enclosed content). Note: Care must be taken when using this function from inside an ADP, because the adpstring is likely to contain script delimiters (<% ... %>) which will prematurely terminate script fragments. It is probably easier to restrict use of this function to .tcl files. ns_adp_registerproc tag ?endtag? proc This commands register a Tcl procedure to be evaluated when the given tag is encountered. The tag argument specifies the tag that will trigger a call to the procedure specified by the proc argument. The procedure will be called with a variable number of arguments, one for each of the attributes provided in the tag. If the endtag argument is specified, the procedure will also receive a final argument with the contents of the text enclosed between the tags. No evaluation of the content will be performed, it will be passed as a single text block. When the procedure is invoked, its result is inserted in the output instead of the tag (or, if the endtag was specified, in place of the tag, end tag, and the enclosed content). ns_adp_registerscript tag ?endtag? script ns_register_adptag tag ?endtag? script These commands are identical and register a Tcl script to be evaluated when the given tag is encountered. The tag argument speci- fies the tag that will trigger evaluation of the script specified by the script argument. If the endtag argument is specified, then the script will be modified with two arguments appended: The first will be the enclosed content, and the second will be the name of an ns_set with any attributes specified in the tag. If no endtag argument is specified, the script will be modified with just the name of the ns_set appended. When the script is evaluated, its result is inserted in the output instead of the tag (or, if the endtag was specified, in place of the tag, end tag, and the enclosed content). EXAMPLES
The following is a simple way of handling conditional content in ADPs: proc remember {input tagset} { global _adp_memory set tagname [ns_set iget $tagset name] if {[string match "" $tagname]} { set _adp_memory($tagname) $input return "" } else { return $input } } proc recall {name} { global _adp_memory if {[info exists _adp_memory($name)]} { set parsecommand [list ns_adp_parse -string] lappend parsecommand $_adp_memory($name) ns_puts -nonewline [uplevel $parsecommand] } else { ns_log Error "[ns_adp_argv 0]: Unable to recall } } If the preceding Tcl has been executed (perhaps during server startup), then the following ADP fragment displays the results of a database query in a table, or shows "No rows in result." if there are no rows: <% set rows {} set db [ns_db gethandle] ns_db exec "select somecolumn from sometable" set row [ns_db bindargs $db] while {[ns_db getrow $db $row] > 0} { lappend rows [ns_set get $row "somecolumn"] } ns_db releasehandle $db %> <remember name="hasrows_header"> <table> </remember> <remember name="hasrows_rows"> <tr> <td><%=$column%></td> </tr> </remember> <remember name="hasrows_footer"> </table> </remember> No rows in result. <remember name="norows"> <% if {[llength $rows] > 0} { recall "hasrows_header" foreach row $rows { set column $row recall "hasrows_rows" } recall "hasrows_footer" } else { recall "norows" } %> The following example demonstrates the use of ns_adp_registertag: ns_adp_registertag printdate { The current date is: <%=[ns_httptime [ns_time]]%> } Once defined, typically in a startup script, you could simple include the "<printdate>" tag to append the text with current date into the output buffer. SEE ALSO
ns_adp(1), ns_adp_eval(n), ns_adp_safeeval(n), ns_adp_include(n) KEYWORDS
ADP, dynamic pages, registered tag AOLserver 4.0 ns_adp_registertag(3aolserver)
Man Page