$Web Input Content: Difference between revisions
m 1 revision  | 
				mNo edit summary  | 
				||
| Line 9: | Line 9: | ||
<section end="syntax" /></p>  | <section end="syntax" /></p>  | ||
$Web_Input_Content takes a single optional argument and returns a longstring.  | |||
<table class="syntaxTable">  | <table class="syntaxTable">  | ||
<tr><th>type</th>  | <tr><th>type</th>  | ||
<td>  | |||
<table class="syntaxTable">  | <table class="syntaxTable">  | ||
<td>A case-independent string set to one of the following:</td></tr>  | <td>A case-independent string set to one of the following:</td></tr>  | ||
| Line 21: | Line 21: | ||
<td>The data is to be left unchanged.</td></tr>  | <td>The data is to be left unchanged.</td></tr>  | ||
<tr><th>TextUtf8</th>  | <tr><th>TextUtf8</th>  | ||
<td>The data is UTF-8 and is to be converted to EBCDIC: each two-byte UTF-8 sequence is converted to the corresponding ASCII character, which is then translated to EBCDIC using the translation table in effect for the ''[[Janus Web Server]]'' connection. This option was first provided as maintenance to ''[[Sirius Mods]]'' version 7.3.  | <td>The data is UTF-8 and is to be converted to EBCDIC: each two-byte UTF-8 sequence is converted to the corresponding ASCII character, which is then translated to EBCDIC using the translation table in effect for the ''[[Janus Web Server]]'' connection. This option was first provided as maintenance to ''[[Sirius Mods]]'' version 7.3.  | ||
</td></tr></table>  | </td></tr>  | ||
</table>  | |||
''type'' is an optional argument, and it defaults to <tt>Binary</tt>.</td></tr>  | |||
</table>  | |||
$Web_Input_Content can be used to examine data from the client in the following situations:  | |||
<ul>  | <ul>  | ||
<li>An HTTP Put.    | <li>An HTTP Put.    | ||
<li>An HTTP Post where the mime-type is set to something other than<tt>application/x-www-form-urlencoded</tt> or <tt>multipart/form-data</tt>.    | <li>An HTTP Post where the mime-type is set to something other than<tt>application/x-www-form-urlencoded</tt> or <tt>multipart/form-data</tt>.    | ||
<li>Any HTTP Post if the RAWINPUT parameter () is set on the port definition.  | <li>Any HTTP Post if the RAWINPUT parameter () is set on the port definition.  | ||
</ul>  | </ul>  | ||
<blockquote> Text data retrieved by $Web_Input_Content is not affected by the setting of the JANUS DEFINE, JANUS WEB ON, or $Web_ProcSend parameters CR, LF, or CRLF. But to facilitate subsequent parsing, ASCII carriage returns (X'0D') and linefeeds (X'0A') that a client sends as line-separators are translated by $Web_Input_Content to EBCDIC carriage returns (X'0D') and linefeeds (X'25').</blockquote>    | <blockquote> Text data retrieved by $Web_Input_Content is not affected by the setting of the JANUS DEFINE, JANUS WEB ON, or $Web_ProcSend parameters CR, LF, or CRLF. But to facilitate subsequent parsing, ASCII carriage returns (X'0D') and linefeeds (X'0A') that a client sends as line-separators are translated by $Web_Input_Content to EBCDIC carriage returns (X'0D') and linefeeds (X'25').</blockquote>    | ||
Revision as of 20:55, 22 February 2011
<section begin="desc" />Retrieve input contents<section end="desc" />
$Web_Input_Content retrieves the "content" of an HTTP Put or Post sent by a client. $Web_Input_Content returns this content as a longstring.
Syntax
<section begin="syntax" /> %LSTR = $Web_Input_Content( type ) <section end="syntax" />
$Web_Input_Content takes a single optional argument and returns a longstring.
| type | 
  | 
|---|
$Web_Input_Content can be used to examine data from the client in the following situations:
- An HTTP Put.
 - An HTTP Post where the mime-type is set to something other thanapplication/x-www-form-urlencoded or multipart/form-data.
 - Any HTTP Post if the RAWINPUT parameter () is set on the port definition.
 
Text data retrieved by $Web_Input_Content is not affected by the setting of the JANUS DEFINE, JANUS WEB ON, or $Web_ProcSend parameters CR, LF, or CRLF. But to facilitate subsequent parsing, ASCII carriage returns (X'0D') and linefeeds (X'0A') that a client sends as line-separators are translated by $Web_Input_Content to EBCDIC carriage returns (X'0D') and linefeeds (X'25').
Having the input content as a single longstring might be inconvenient for many applications, especially if the data is line-oriented. It is the application's responsibility to parse this longstring using longstring parsing functions (see the Sirius Functions Reference Manual) or Stringlist parsing methods (see the Janus SOAP Reference Manual -- the Stringlist class ParseLines method is likely to be particularly helpful).
$Web_Input_Content is available only in Versions 6.7 and later of the Sirius Mods.
See also $Web_Output_Content and $Web_File_Content.