问题描述
本人初学Lotus,关于这个CGI变量的用法一直不太明白,CGI变量可以传值,但到底怎么传,求各位前辈指点。
解决方案
解决方案二:
当域用CGI变量来命名时,Domino从CGI环境拷贝域值并将其放置在域中。此特性可用于“显示时计算”域和决定“隐藏”条件。创建域并赋予该域一个CGI变量名。例如:如果希望得到提交表单的用户的IP地址,请向表单中添加名为Remote_Addr的域.在代理中代理中得到的当前文档documentcontext可以直接访问CGI变量,即使你没有在文档中没有建CGI变量域也可以得CGI变量的值。Domino通过域或LotusScript代理获得下列CGI变量。也可以获得以HTTP或HTTPS打头的CGI变量。例如:cookies被浏览器变成HTTP_Cookie发送至服务器。Lotus中所有可以使用的CGI变量如下:Auth_Type如果服务器支持用户验证而且Script被保护,这是用于校验用户的特定协议的验证方法。Content_Length内容的长度,与客户机给出的相同。Content_Type对于带有附加信息的查询,比如HTTPPOST和PUT,这是数据的内容类型。Gateway_Interface服务器所遵守的CGI规范版本。HTTP_Accept客户机接受的MIME类型,通过HTTP标题指定。HTTP_Accept_language客户机接受的语言,通过HTTP标题指定。HTTP_Referer用户经常访问的页面的URL地址。HTTPS指示服务器是否启用SSL模式。HTTPS_CLIENT_CERT_COMMON_NAMEx.509验证字上的公共名称HTTPS_CLIENT_CERT_ISSUER_COMMON_NAMEx.509验证字的发行者HTTPS_KEYSIZESSL会话过程中的会话密钥。例如:40-bit、128-bit。Path_Translated服务器提供PATH_INFO的翻译版本,它获得路径并能对其进行从虚拟地址到物理地址的任何映射。Query_String?后的信息,或在某些情况下是引用此Script的URL中位于!*后的信息。Query_String_Decoded返回值与Query_String相同,但是将字符串解码。例如:如果URL引用了一个包含不允许出现在URL中的字符的视图名称,此名称会被编码。此CGI变量将字符串解码。Path_Info_Decoded仅对于Domino应用程序可用。Remote_Addr发出请求的远程主机的IP地址。Remote_Host发出请求的主机名称。Remote_Ident此变量会设置为从服务器提取的远程用户名。仅登录时使用此变量。Remote_User返回被验证用户名的验证方法。Request_Content仅由代理支持。包含使用HTTPPOST请求发送的数据。此数据经常是“URL编码的”,由用“&”连接的name=value对组成。例如:FirstName=John&LastName=DoeRequest_Method用于发出请求的方法。对于HTTP,是“GET”、“HEAD”、“POST”等等。Script_Name到被执行的Script的虚拟路径,用于自引用的URL。Server_Name服务器的宿主名称、DNS别名或IP地址,将出现在自引用的URL中。Server_Protocol与请求同时出现的信息协议的名称和修订。Server_Port发送请求的端口。Server_Software运行CGI程序的信息服务器软件的名称和版本。Server_URL_Gateway_Interface服务器遵守的CGI规范的版本。
解决方案三:
你粘贴的这些我都看过了,有没有哪位有经验的前辈给通俗的解释一下
解决方案四:
CGI变量与domino平台无关,是一个web上的标准的东西。无论domino还是.net还是j2ee还是php,都支持。你可以这么理解:就是包含了本次客户端到服务器的http请求中,包含的各种信息(如ls的列表所属),这样运行在后台服务器的程序就可以根据设计需要获取到http请求包含的信息(如发起请求的客户端IP,请求的UTL,请求提交的数据,客户端版本,请求类型等等)。比如ajax技术常用的通过URL中添加&name=value这样的参数,就可以通过Query_String_Decoded或Query_String获取(需要字符串截取),或者获取Remote_Addr记录发起请求的计算机ip等等domino获取CGI变量的方法如同获取代理当前doc对象的域值。一句话,就是HTTP请求所包含的一些基本信息。不知能否理解……
解决方案五:
如果你在web端打开的是个表单,在表单中建与CGI变量同名的域就可以获得该CGI的值。如建立个Query_String域,当表单在web端打开时的Query_String的值就是URL中添加的&name1=value1&name2=valuel2这样的值。如果你在web端打开的是个Agent,那么currentsession中的DocumentContext对象就包含这些CGI变量的值,你可以用下面的方法获得:DimsessionAsNewNotesSessionDimnoteAsNotesDocumentSetnote=session.DocumentContextquerystring$=Note.Query_string(0)这些CGI变量得到后作什么用就看你的程序目前了。
解决方案六:
引用3楼l0tux的回复:
CGI变量与domino平台无关,是一个web上的标准的东西。无论domino还是.net还是j2ee还是php,都支持。你可以这么理解:就是包含了本次客户端到服务器的http请求中,包含的各种信息(如ls的列表所属),这样运行在后台服务器的程序就可以根据设计需要获取到http请求包含的信息(如发起请求的客户端IP,请求的UTL,请求提交的数据,客户端版本,请求类型等等)。比如ajax……
是这样的!明白吗?