我翻译的ServerXMLHttp中文手册(10)

来源:互联网 发布:轩辕剑系列 知乎 编辑:程序博客网 时间:2024/04/28 04:44

本手册完整下载地址:http://download.csdn.net/source/1977669

send 方法

发送一个HTTP请求到服务器并接收一个应答。

语法
oServerXmlhttp.send(varBody)
示例
dim oServerXmlhttp,oStreamset oServerXmlhttp = server.createObject("Msxml2.ServerXMLHTTP.3.0")oServerXmlhttp.open "GET", "http://localhost/book.htm", False, "", "" oServerXmlhttp.send()set oStream = oServerXmlhttp.responseStreamset oServerXmlhttp = nothing
参数

varBody[in, optional]

随同请求一起发送的消息体

备注

这种方法是同步还是异步,取决于调用的Open方法中的bAsync参数值。如果调用Open方法bAsync=False,这一调用在整个应答接收完成之前或协议堆栈超时之前将不会返回。如果调用Open方法bAsync==True,这一调用将立即返回。

这个方法有一个可选参数,就是使用requestBody。接受的变量类型可以是BSTR型、UI1型的SAFEARRAY、IDispatch对应一个XML文档对象模型(DOM)对象,和 IStream *.您在发送IStream *输入类型时可以只使用Chunked编码。该组件将自动设置为除IStream之外的类型设置一个Content - Length头。

如果输入类型是一个BSTR,应答的编码总是编码为UTF-8。这个调用必须用适当的content-type值设置相应的Content-Type头,并包括一个charset参数。

如果输入类型是UI1型的SAFEARRAY,应答将不带额外编码地发送,这个调用必须用适当的content-type值设置相应的Content-Type头。

如果输入的类型是一个XMLDOM对象,响应将根据文档的<?XML声明定义的属性来编码。如果没有XML声明或编码属性,就假设为UTF-8。

如果输入类型的IStream *,应答将不带额外编码地发送。这个调用必须用适当的content-type值设置相应的Content-Type头。

重点注意

您不能对一个Open方法调用多个Send方法,作这代替,对于每个Send方法,则必须调用相应的Open方法。例如:

osrvXmlHttp.openosrvXmlHttp.send 
osrvXmlHttp.openosrvXmlHttp.send

setOption 方法

设置下列选项之一:

  • SXH_OPTION_URL_CODEPAGE
  • SXH_OPTION_ESCAPE_PERCENT_IN_URL
  • SXH_OPTION_IGNORE_SERVER_SSL_CERT_ERROR_FLAGS
  • SXH_OPTION_SELECT_CliENT_SSL_CERT

要得到更多信息请阅读备注。

语法

oServerXmlhttp.setOption(option, value)

示例

dim oServerXmlhttp,strValueset oServerXmlhttp = server.createObject("Msxml2.ServerXMLHTTP.3.0")oServerXmlhttp.setOption 2, 13056oServerXmlhttp.open "GET", "http://localhost/book.htm", False, "", "" oServerXmlhttp.send()strValue = oServerXmlhttp.responseTextset oServerXmlhttp = nothing

参数

option

要被设置值的选项。

value

该指定选项被设置为的值。

备注

以下表格列出了setOption方法可用的选项。

0SXH_OPTION_URL_CODEPAGE:默认情况下,CP_UTF8是用于转换Unicode URL字符串的为一个单字节表示的code page,它在Open方法中被指定。
该SXH_OPTION_URL_CODEPAGE选项允许客户端用其它code page值覆盖这个默认值。客户端必须指定一个无符号整型数作为code page。1SXH_OPTION_ESCAPE_PERCENT_IN_URL:默认情况下会转义不安全的ANSI字符的URL(例如," " -> "%20")不转义%字符本身。
该SXH_OPTION_ESCAPE_PERCENT_IN_URL选项允许客户端改变这种行为。客户端必须为该选项指定一个True/Falsed布尔值。2关闭一个标记,你把它从默认值中减掉,这就是它的标志总和。要关闭一个标志,减去从默认值,这是它的标志总和。例如,为了捕捉证书失效的日期,您关闭SXH_SERVER_CERT_IGNORE_CERT_DATE_INVALID标志如下:
shx.setOption(2, shx.getOption(2) -SXH_SERVER_CERT_IGNORE_CERT_DATE_INVALID )
All certificate errors.证书中的数据是无效或过期的。
Mismatch between the visited hostname and the certificate name being used on the server. 主机之间访问出错、证书的名称曾被用在服务器上。 。
Malformed certificate such as a certificate with no subject name.格式不正确的证书,例如一个没有主题名称证书。
Unknown certificate authority未知证书颁发机构3shx.setOption(3, "MSXML")