返回一个 HTTP 变量的值。
HTTP_VARIABLE( var-name [ [ , instance ] , http-header-field ] )
var-name HTTP 变量的名称。
instance 当有多个变量具有相同的名称时,则为字段实例的实例编号;当要获取第一个变量时,则为 NULL。当选择列表允许进行多个选择时会有用处。
http-header-field 在有多个部分的请求中,与 var-name 中指定的命名字段相关联的标头字段名。
此函数返回指定的 HTTP 变量的值。在 Web 服务内处理 HTTP 请求时,将使用该函数。
LONG VARCHAR
如果给定 var-name 的标头不存在,则返回值为 NULL。
当 Web 服务请求为 POST 且变量数据作为多部分/形式数据进行发送时,HTTP 服务器会分别接收每个变量的 HTTP 标头。如果指定了 http-header-field 参数,HTTP_VARIABLE 函数会从 POST 请求返回特定变量的关联多部分/形式数据标头值。
所有输入数据都会经历客户端(例如,浏览器)字符集与数据库字符集之间的字符集转换。不过,如果为 http-header-field 指定了 @BINARY,则返回变量输入值而不进行字符集转换。从客户端接收二进制数据(如图像数据)时,这可能会有用处。
如果不是从 Web 服务进行调用,此函数会返回 NULL。
SQL/2003 服务商扩充。
在由 HTTP Web 服务所调用的存储过程内,使用以下语句会请求图像变量的 Content-Disposition 和 Content-Type 标头:
SET v_name = HTTP_VARIABLE( 'image', NULL, 'Content-Disposition' ); SET v_type = HTTP_VARIABLE( 'image', NULL, 'Content-Type' ); |
在由 HTTP Web 服务所调用的存储过程内,使用以下语句会请求图像变量在其当前字符集中的值,即不进行字符集转换的值:
SET v_image = HTTP_VARIABLE( 'image', NULL, '@BINARY' ); |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |