5a5x官方模块源码:

.版本 2
.程序集 WinHttp
.程序集变量 对象, 对象
.子程序 _初始化, , , 当基于本类的对象被创建后,此方法会被自动调用

对象.创建 (“WinHttp.WinHttpRequest.5.1”, )
.子程序 _销毁, , , 当基于本类的对象被销毁前,此方法会被自动调用
对象.清除 ()
.子程序 访问网页, 字节集, 公开
.参数 提交网址, 文本型, , 欲访问的网络地址
.参数 访问方式, 文本型, 可空, "GET" 或 "POST";可空,空或""等效于"GET"方式。
.参数 提交信息, 文本型, 可空, 发送模式为"POST"时,指定POST数据。各值用"&"间隔。
.参数 附加协议, 文本型, 可空, 可通过此参数伪造Referer User-Agent等协议信息
.参数 超时秒数, 整数型, 可空, 单位秒,有可能线程阻塞,可在外部加超时判断。默认为20秒
.参数 代理地址, 文本型, 可空, 通过代理IP地址进行网络连接。
.参数 返协议头, 文本型, 参考 可空, 返回数据包协议头,里面包含Session
.局部变量 POST格式, 文本型
.局部变量 随机文本, 文本型
.局部变量 变体型p, 变体型
.局部变量 变体型R, 变体型
访问方式 = 到大写 (访问方式)
.如果真 (寻找文本 (代理地址, “:”, , 假) ≠ -1)
对象.方法 (“setProxy”, 2, 删首尾空 (代理地址), 假)
.如果真结束
超时秒数 = 超时秒数 × 1000
.如果真 (超时秒数 = 0)
超时秒数 = 2000
.如果真结束
对象.方法 (“SetTimeouts”, 超时秒数, 超时秒数, 超时秒数, 超时秒数)
' 本源码来自易语言资源网(www.5A5X.com)
.判断开始 (访问方式 = “POST”)
对象.方法 (“open”, “POST”, 提交网址, 假)
.默认
对象.方法 (“open”, “GET”, 提交网址, 假)
.判断结束
' 本源码来自易语言资源网(www.5A5X.com)
.判断开始 (访问方式 = “POST”)
对象.方法 (“setRequestHeader”, “Content-Type”, “application/x-www-form-urlencoded”)
变体型R.赋值 (到字节集 (删首尾空 (提交信息)), )
对象.方法 (“send”, 变体型R)
.默认
对象.方法 (“send”, )
.判断结束
变体型p = 对象.读属性 (“GetAllResponseHeaders”, )
返协议头 = 变体型p.取文本 ()
变体型p = 对象.读属性 (“responsebody”, )
返回 (变体型p.取字节集 ())

调用方式:

.版本 2
.子程序 _POST注册列_被单击
.局部变量 返回结果, 文本型
.局部变量 www, WinHttp
.局部变量 账号, 文本型
.局部变量 密码, 文本型
置随机数种子 ()
账号 = “qq” + 到文本 (取随机数 (11111, 999999))
密码 = 到文本 (取随机数 (11111111, 999999999))
' 本源码来自易语言资源网(www.5A5X.com)
返回结果 = 到文本 (www.访问网页 (“http://bj.ganji.com/user/register.php”, “POST”, “username=” + 账号 + “&next=&second=&password=” + 密码 + “&password2=” + 密码 + “&email=&affirm=on”, , 20, , ))
编辑框_操作结果.加入文本 (返回结果)
.子程序 _GET读取列_被单击
.局部变量 返回结果, 文本型
.局部变量 www, WinHttp
.局部变量 编码, 编码转换类
返回结果 = 到文本 (编码.UTF8转ANSI (www.访问网页 (“http://iframe.ip138.com/ic.asp”, “GET”, , , 20, , )))
' 本源码来自易语言资源网(www.5A5X.com)
编辑框_操作结果.加入文本 (返回结果)

Related Posts: 易语言-利用对象访问网页-POST-GET :