<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>骨头软件工作室 &#187; HTTP客户</title>
	<atom:link href="http://www.gutou.cc/tag/http%e5%ae%a2%e6%88%b7/feed" rel="self" type="application/rss+xml" />
	<link>http://www.gutou.cc</link>
	<description>专注于网络营销软件及自动办公软件开发</description>
	<lastBuildDate>Wed, 09 Jul 2025 05:26:45 +0000</lastBuildDate>
	<language>zh-CN</language>
		<sy:updatePeriod>hourly</sy:updatePeriod>
		<sy:updateFrequency>1</sy:updateFrequency>
	<generator>https://wordpress.org/?v=4.0.33</generator>
	<item>
		<title>易语言HTTP客户端源码</title>
		<link>http://www.gutou.cc/275.html</link>
		<comments>http://www.gutou.cc/275.html#comments</comments>
		<pubDate>Wed, 25 Jul 2012 04:54:48 +0000</pubDate>
		<dc:creator><![CDATA[骨头]]></dc:creator>
				<category><![CDATA[技术文章]]></category>
		<category><![CDATA[HTTP客户]]></category>
		<category><![CDATA[易语言]]></category>

		<guid isPermaLink="false">http://www.gutou.cc/?p=275</guid>
		<description><![CDATA[.版本 2 .程序集 HTTP客户端, , 公开, 提供HTTP客户端功能的封装。支持同步 异步方式从服务器获取数据。 .程序集变量 __回调函数, 子程序指针 .程序集变量 对象, 对象 .程序集变量 事件对象方法集, 子程序指针, , &#8220;8&#8221; .程序集变量 事件对象结构, [&#8230;]]]></description>
				<content:encoded><![CDATA[<p><coolcode lang="cpp" linenum="off"><br />
.版本 2</p>
<p>.程序集 HTTP客户端, , 公开, 提供HTTP客户端功能的封装。支持同步 异步方式从服务器获取数据。<br />
.程序集变量 __回调函数, 子程序指针<br />
.程序集变量 对象, 对象<br />
.程序集变量 事件对象方法集, 子程序指针, , &#8220;8&#8221;<br />
.程序集变量 事件对象结构, 对象附加数据<br />
.程序集变量 事件对象指针, 整数型<br />
.程序集变量 e, 对象<br />
.程序集变量 原壳数据, 整数型<br />
.程序集变量 __网络地址, 文本型</p>
<p>.子程序 _初始化, , , 当基于本类的对象被创建后，此方法会被自动调用<br />
.局部变量 pthis, 整数型</p>
<p>置入代码 ({ 139, 69, 8, 139, 0, 137, 69, 252 })<br />
子程序指针_重置 (__回调函数)<br />
__网络地址 ＝ “”<br />
事件对象方法集 [1] ＝ &#038;QueryInterface<br />
事件对象方法集 [2] ＝ &#038;AddRef<br />
事件对象方法集 [3] ＝ &#038;Release<br />
事件对象方法集 [4] ＝ &#038;GetTypeInfoCount<br />
事件对象方法集 [5] ＝ &#038;GetTypeInfo<br />
事件对象方法集 [6] ＝ &#038;GetIDsOfNames<br />
事件对象方法集 [7] ＝ &#038;Invoke  &#8216; 从这里引出事件</p>
<p>事件对象结构.ppv ＝ 子程序指针_地址 (事件对象方法集 [1])<br />
事件对象结构.成员 ＝ pthis<br />
事件对象指针 ＝ 整数_地址 (事件对象结构.ppv)<br />
&#8216; 借壳<br />
赋值整数_API (原壳数据, e, 4)<br />
赋值对象_API (e, 事件对象指针, 4)<br />
CoInitialize (0)</p>
<p>.子程序 _销毁, , , 当基于本类的对象被销毁前，此方法会被自动调用</p>
<p>&#8216; 还壳<br />
赋值对象_API (e, 原壳数据, 4)<br />
CoUninitialize ()</p>
<p>.子程序 状态改变, , 公开, 如果采用继承模式。覆盖这个方法。请求完成后。这个方法会被系统调用。<br />
.局部变量 a, 整数型</p>
<p>a ＝ 对象.读数值属性 (“readyState”, )<br />
置入代码 ({ 139, 93, 8, 139, 27, 131, 195, 4, 139, 19, 133, 210, 116, 5, 255, 117, 252, 255, 210 })</p>
<p>.子程序 打开, , 公开<br />
.参数 方法, 文本型, 参考, POST 或者 GET<br />
.参数 URL, 文本型, 参考<br />
.参数 异步, 逻辑型, 可空, 默认为假<br />
.参数 回调函数, 子程序指针, 可空, 如果为空。则不处理返回结果。如果你通过继承处理。则覆盖基类的方法原型为 <无返回值> 状态改变() </p>
<p>.如果真 (假 ＝ 对象.创建 (“WinHttp.WinHttpRequest.5.1”, ))<br />
    .如果真 (假 ＝ 对象.创建 (“MSXML2.XMLHTTP.4.0”, ))<br />
        .如果真 (假 ＝ 对象.创建 (“MSXML2.XMLHTTP.3.0”, ))<br />
            .如果真 (假 ＝ 对象.创建 (“MSXML2.XMLHTTP”, ))<br />
                .如果真 (假 ＝ 对象.创建 (“Microsoft.XMLHTTP”, ))<br />
                    输出调试文本 (“错误:创建XMLHTTP对象失败。”)<br />
                    返回 ()<br />
                .如果真结束</p>
<p>            .如果真结束</p>
<p>        .如果真结束</p>
<p>    .如果真结束</p>
<p>.如果真结束</p>
<p>.如果真 (异步)  &#8216; 异步则出发事件<br />
    对象.写属性 (“onreadystatechange”, e)<br />
.如果真结束<br />
.如果 (异步 且 假 ＝ 是否为空 (回调函数))<br />
    __回调函数 ＝ 回调函数<br />
.否则<br />
    子程序指针_重置 (__回调函数)<br />
.如果结束<br />
对象.方法 (“Open”, 方法, URL, 异步)<br />
对象.方法 (“setRequestHeader”, “Accept-Language”, “zh-cn”)<br />
&#8216; 对象.方法 (“setRequestHeader”, “Accept-Encoding”, “gzip, deflate”)</p>
<p>.子程序 置请求协议头, , 公开, 注意：在打开()方法后才能设置方能有效。<br />
.参数 名字, 文本型, 参考<br />
.参数 值, 文本型, 参考</p>
<p>.如果真 (假 ＝ 对象.是否为空 ())<br />
    对象.方法 (“setRequestHeader”, 名字, 值)<br />
.如果真结束</p>
<p>.子程序 发送, , 公开<br />
.参数 数据, 文本型, 参考 可空</p>
<p>.如果 (假 ＝ 是否为空 (数据))<br />
    对象.方法 (“send”, 数据)<br />
.否则<br />
    对象.方法 (“send”, )<br />
.如果结束</p>
<p>.子程序 取文本, 文本型, 公开</p>
<p>.如果真 (假 ＝ 对象.是否为空 ())<br />
    返回 (对象.读文本属性 (“responseText”, ))<br />
.如果真结束<br />
返回 (“”)</p>
<p>.子程序 取字节集, 字节集, 公开</p>
<p>.如果真 (假 ＝ 对象.是否为空 ())<br />
    返回 (对象.读属性 (“responseBody”, ).取字节集 ())<br />
.如果真结束<br />
返回 ({  })</p>
<p>.子程序 返回状态, 整数型, 公开, 返回状态 200 成功</p>
<p>返回 (对象.读数值属性 (“status”, ))</p>
<p>.子程序 撤消, , 公开, 失败返回空文本。</p>
<p>.如果真 (假 ＝ 对象.是否为空 ())<br />
    对象.方法 (“abortn ”, )<br />
.如果真结束</p>
<p>.子程序 取所有返回头信息, 文本型, 公开, 失败返回空文本。</p>
<p>.如果真 (假 ＝ 对象.是否为空 ())<br />
    返回 (对象.文本方法 (“getAllResponseHeaders”, ))<br />
.如果真结束<br />
返回 (“”)</p>
<p>.子程序 取返回头信息, 文本型, 公开<br />
.参数 名字, 文本型, 参考</p>
<p>.如果真 (假 ＝ 对象.是否为空 ())<br />
    返回 (对象.文本方法 (“getResponseHeader”, 名字))<br />
.如果真结束<br />
返回 (“”)</p>
<p>.子程序 取进度, 整数型, 公开, 0:未初始化 1:初始化(尚未发送) 2:发送数据 3:数据发送中 4:完成</p>
<p>.如果真 (假 ＝ 对象.是否为空 ())<br />
    返回 (对象.读数值属性 (“readyState”, ))<br />
.如果真结束<br />
返回 (0)</p>
<p>.子程序 等待完成, 逻辑型, 公开<br />
.参数 超时, 整数型</p>
<p>返回 (对象.逻辑方法 (“WaitForResponse”, 超时))<br />
</coolcode> </p>
<p>作者:GBB(龚辟愚)</p>
<p><strong>完整源码下载:</strong><br />
<a href="http://pan.baidu.com/netdisk/singlepublic?fid=729286_1140267018" target="_blank">百度网盘下载</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.gutou.cc/275.html/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
