开启辅助访问 切换到宽版

精易论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

用微信号发送消息登录论坛

新人指南 邀请好友注册 - 我关注人的新帖 教你赚取精币 - 每日签到


求职/招聘- 论坛接单- 开发者大厅

论坛版规 总版规 - 建议/投诉 - 应聘版主 - 精华帖总集 积分说明 - 禁言标准 - 有奖举报

查看: 6741|回复: 13
收起左侧

[已解决] 网页_访问S POST BUG 修复

[复制链接]
结帖率:65% (28/43)
发表于 2015-7-16 00:16:18 | 显示全部楼层 |阅读模式   四川省广元市
本帖最后由 萧阳天 于 2015-7-18 21:26 编辑
  
子程序名返回值类型公开备 注
网页_访问S文本型 MIV修改POST无法提交BUG
参数名类 型参考可空数组备 注
网址文本型完整的网页地址,必须包含http://或者https://
访问方式整数型0=GET 1=POST 2=HEAD 3=PUT
提交信息文本型POST专用
提交Cookies文本型本参数传递变量时会自动回传返回的Cookie
返回Cookies文本型返回的Cookie
附加XY头文本型一行一个请用换行符隔开,建议填写常量值或文本值,防止因传参引发错误
返回XY头文本型返回的XY头
禁止重定向逻辑型默认不禁止网页重定向
网站登录用户名文本型自动登录网页用户名 如路由器
网站登录密码文本型
代理地址文本型代理地址,格式为 8.8.8.8:88
代理帐号文本型
代理密码文本型
超时时间可以被省略,单位:秒,默认30秒,如果提供大于0的数值,则修改操作超时时间。
返回重定向文本型可以被省略,提供参数时只能提供文本型变量,用于当发生重定向时取回页面重定向的地址。
返回状态文本文本型
返回原始数据字节集可以被省略,返回原始网页编码
变量名类 型静态数组备 注
局_URL结构URL_COMPONENTS 
局_网页地址字节集 
局_域名文本型 
局_端口  
局_重定向地址文本型 
局_HTTPS逻辑型 
局_会话句柄整数型 
局_User_Agent文本型 
局_代理名称字节集 
局_会话类型  
局_连接句柄  
局_请求句柄  
局_访问方式文本型 
局_页面地址字节集 
局_设置超时  
局_请求标记  
局_请求XY文本型 
局_请求报头字节集 
局_数据长度整数型 
局_提交数据字节集 
局_可读长度整数型 
局_缓存数据字节集 
局_网页数据字节集 
局_网页内容文本型 
局_文本数组文本型0
局_编码类型文本型 
局_解码对象对象 
局_变体型变体型 
局_计次整数型 
局_正则正则表达式类 
WinHttpSendRequest逻辑逻辑型 
如果 (WinHttpCheckPlatform ())
局_URL结构.dwStructSize = 60
连续赋值 (-1, 局_URL结构.dwSchemeLength, 局_URL结构.dwHostNameLength, 局_URL结构.dwUrlPathLength, 局_URL结构.dwExtraInfoLength)
局_网页地址 = 编码_Ansi到Unicode (网址)
如果 (WinHttpCrackUrl (局_网页地址, 取字节集长度 (局_网页地址), 0, 局_URL结构))
局_域名 = 编码_Unicode到Ansi (指针到字节集 (局_URL结构.lpszHostName, 局_URL结构.dwHostNameLength × 2))
局_页面地址 = 选择 (局_URL结构.dwUrlPathLength < 1, 编码_Ansi到Unicode (“/”), 指针到字节集 (局_URL结构.lpszUrlPath, 局_URL结构.dwUrlPathLength × 2)指针到字节集 (局_URL结构.lpszExtraInfo, 局_URL结构.dwExtraInfoLength × 2){ 0, 0 })
局_端口 = 局_URL结构.nPort
局_HTTPS = 2 = 局_URL结构.nScheme
局_会话类型 = 选择 (取文本长度 (代理地址) > 0, 3, 1)
局_代理名称 = 选择 (取文本长度 (代理地址) = 0, { 0, 0 }, 选择 (局_HTTPS, 编码_Ansi到Unicode (代理地址), 编码_Ansi到Unicode (“http=” + 代理地址)))
局_会话句柄 = WinHttpOpen (0, 局_会话类型, 局_代理名称, 0, 0)
如果 (局_会话句柄 ≠ 0)
局_连接句柄 = WinHttpConnect (局_会话句柄, 编码_Ansi到Unicode (局_域名), 局_端口, 0)
如果 (局_连接句柄 ≠ 0)
如果真 (访问方式 < 0 访问方式 > 3)
访问方式 = 0
局_访问方式 = 多项选择 (访问方式 + 1, “GET”, “POST”, “HEAD”, “PUT”)
' 局_访问方式 = 选择 (访问方式 < 0 访问方式 > 3, 多项选择 (访问方式 + 1, “GET”, “POST”, “HEAD”, “PUT”), “GET”)
局_请求句柄 = WinHttpOpenRequest (局_连接句柄, 编码_Ansi到Unicode (局_访问方式), 局_页面地址, 0, 0, 0, 选择 (局_HTTPS, 8388608, 0))
如果 (局_请求句柄 ≠ 0)
局_设置超时 = 选择 (超时时间 > 0, 超时时间 × 1000, 30000)
如果 (WinHttpSetTimeouts (局_请求句柄, 局_设置超时, 局_设置超时, 局_设置超时, 局_设置超时))
如果真 (取文本长度 (网站登录用户名) > 0 取文本长度 (网站登录密码) > 0)
如果真 (WinHttpSetCredentials (局_请求句柄, 0, 1, 编码_Ansi到Unicode (网站登录用户名), 编码_Ansi到Unicode (网站登录密码), 0))
返回状态文本 = “707 设置代理凭证失败!”
WinHttpCloseHandle (局_请求句柄)
WinHttpCloseHandle (局_连接句柄)
WinHttpCloseHandle (局_会话句柄)
返回 (“”)

如果真 (取文本长度 (代理帐号) > 0 取文本长度 (代理密码) > 0)
如果真 (WinHttpSetCredentials (局_请求句柄, 1, 1, 编码_Ansi到Unicode (代理帐号), 编码_Ansi到Unicode (代理密码), 0))
WinHttpCloseHandle (局_请求句柄)
WinHttpCloseHandle (局_连接句柄)
WinHttpCloseHandle (局_会话句柄)
返回状态文本 = “707 设置代理凭证失败!”
返回 (“”)

局_请求标记 = 选择 (是否为空 (提交Cookies), 63, 79)
如果真 (WinHttpSetOption (局_请求句柄, 局_请求标记, 1, 4))
返回状态文本 = “708 禁止自动设置Cookies失败!”
WinHttpCloseHandle (局_请求句柄)
WinHttpCloseHandle (局_连接句柄)
WinHttpCloseHandle (局_会话句柄)
返回 (“”)
如果真 (禁止重定向)
如果真 (WinHttpSetOption (局_请求句柄, 63, 2, 4))
返回状态文本 = “709 重定向设置失败!”
WinHttpCloseHandle (局_请求句柄)
WinHttpCloseHandle (局_连接句柄)
WinHttpCloseHandle (局_会话句柄)
返回 (“”)

如果真 (取文本长度 (附加XY头) > 0)  ' 先加载用户设置的XY头,后面再进行补充。
局_请求XY = 附加XY头
如果真 (寻找文本 (局_请求XY, “User-Agent: ”, 1, ) = -1)
局_请求XY = 局_请求XY + “User-Agent: Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; WOW64; Trident/5.0)”#换行符
如果真 (寻找文本 (局_请求XY, “Accept: ”, 1, ) = -1)
局_请求XY = 局_请求XY + “Accept: text/html, application/xhtml+xml, */*”#换行符
如果真 (寻找文本 (局_请求XY, “Accept-Encoding: ”, 1, ) = -1)
局_请求XY = 局_请求XY + “Accept-Encoding: gbk, GB2312”#换行符
如果真 (寻找文本 (局_请求XY, “Accept-Language: ”, 1, ) = -1)
局_请求XY = 局_请求XY + “Accept-Language: zh-cn”#换行符
如果真 (寻找文本 (局_请求XY, “Cache-Control: ”, , ) = -1)
局_请求XY = 局_请求XY + “Cache-Control: no-cache”#换行符
如果真 (寻找文本 (局_请求XY, “Cookie: ”, , ) = -1)
如果真 (取文本长度 (提交Cookies) > 0)
局_请求XY = 局_请求XY + “Cookie: ” + 提交Cookies + #换行符

局_请求报头 = 编码_Ansi到Unicode (局_请求XY)
局_数据长度 = 取字节集长度 (局_请求报头) ÷ 2 - 1
如果 (WinHttpAddRequestHeaders (局_请求句柄, 局_请求报头, 局_数据长度, 位或 (536870912, 2147483648)))
局_数据长度 = 0
如果真 (是否为空 (提交信息))
如果真 (访问方式 ≠ 0)
局_提交数据 = 到字节集 (提交信息)
局_数据长度 = 取字节集长度 (局_提交数据)
WinHttpSendRequest逻辑 = WinHttpSendRequest (局_请求句柄, 0, 0, 局_提交数据, 局_数据长度, 局_数据长度, 0)
如果 (WinHttpSendRequest逻辑)
如果 (WinHttpReceiveResponse (局_请求句柄, 0))
局_缓存数据 = {  }
局_网页数据 = {  }
判断循环首 (WinHttpQueryDataAvailable (局_请求句柄, 局_可读长度))
如果真 (局_可读长度 < 1)
跳出循环 ()
局_缓存数据 = 取空白字节集 (局_可读长度)
如果真 (WinHttpReadData (局_请求句柄, 局_缓存数据, 局_可读长度, 局_数据长度))
返回状态文本 = “713 读取数据失败!”
跳出循环 ()
局_网页数据 = 局_网页数据 + 取字节集左边 (局_缓存数据, 局_数据长度)
判断循环尾 ()
局_缓存数据 = {  }
局_数据长度 = 0
WinHttpQueryHeaders (局_请求句柄, 22, 0, 局_缓存数据, 局_数据长度, 0)
局_缓存数据 = 取空白字节集 (局_数据长度)
如果真 (WinHttpQueryHeaders (局_请求句柄, 22, 0, 局_缓存数据, 局_数据长度, 0))
返回XY头 = 编码_Unicode到Ansi (局_缓存数据)
返回状态文本 = 取文本中间 (返回XY头, 10, 寻找文本 (返回XY头, #换行符, 10, ) - 9)
返回XY头 = 子文本替换 (返回XY头, “Set-Cookie”, “Set-Cookie”, , , )
局_文本数组 = 分割文本 (返回XY头, #换行符, )
计次循环首 (取数组成员数 (局_文本数组), 局_计次)
如果真 (寻找文本 (局_文本数组 [局_计次], “Set-Cookie”, , ) ≠ -1)
判断 (寻找文本 (局_文本数组 [局_计次], “;”, , ) ≠ -1)
返回Cookies = 返回Cookies + 删首尾空 (文本_取出中间文本 (局_文本数组 [局_计次], “Set-Cookie:”, “;”)) + “; ”
返回Cookies = 返回Cookies + 删首尾空 (子文本替换 (局_文本数组 [局_计次], “Set-Cookie:”, , , , )) + “; ”

如果真 (文本比较 (取文本左边 (局_文本数组 [局_计次], 10), “Location: ”, ) = 0)
返回重定向 = 取文本中间 (局_文本数组 [局_计次], 11, 取文本长度 (局_文本数组 [局_计次]) - 10)
处理事件 ()
计次循环尾 ()
返回Cookies = 取文本左


来源于:MIV论坛用户
结帖率:0% (0/1)

签到天数: 2 天

发表于 2016-3-28 23:14:38 | 显示全部楼层   广西壮族自治区南宁市
我只是来打酱油的!!!
回复 支持 反对

使用道具 举报

结帖率:65% (28/43)

签到天数: 6 天

 楼主| 发表于 2015-7-17 16:37:18 | 显示全部楼层   四川省广元市
萧阳天 发表于 2015-7-17 14:14
帮忙测试一下带cookie访问是否正常

测试 访问s 吗   
说清楚  
回复 支持 反对

使用道具 举报

结帖率:100% (9/9)
发表于 2015-7-17 14:14:02 | 显示全部楼层   浙江省温州市
帮忙测试一下带cookie访问是否正常 精易模块5.21- 2015年7月17日.zip (550.86 KB, 下载次数: 34)
回复 支持 反对

使用道具 举报

结帖率:65% (28/43)

签到天数: 6 天

 楼主| 发表于 2015-7-16 23:02:42 | 显示全部楼层   四川省广元市
萧阳天 发表于 2015-7-16 17:01
请提供完整修改源码,并注明修改备注,谢谢!

你们先测试 吧   如果你们自己发现了修改部位 我就不必 表面了 如果你们有没有发现  和测试不出其他的bug我就在备注
回复 支持 反对

使用道具 举报

结帖率:100% (11/11)

签到天数: 21 天

发表于 2015-7-16 21:17:09 | 显示全部楼层   广东省阳江市
剩下我de孩子气 发表于 2015-7-16 07:37
现在的版本已经没有访问s了

我之前删除了,后面萧阳天他又加上了,名字是一样的,但是,和之前的不一样了

之前的网页访问s,就是网页访问,转码,再到文本。。。现在的这个是重新写的,还是别人写的。。。
回复 支持 反对

使用道具 举报

结帖率:100% (9/9)
发表于 2015-7-16 17:01:16 | 显示全部楼层   浙江省温州市
请提供完整修改源码,并注明修改备注,谢谢!
回复 支持 反对

使用道具 举报

结帖率:65% (28/43)

签到天数: 6 天

 楼主| 发表于 2015-7-16 11:02:22 | 显示全部楼层   四川省广元市
kyseven 发表于 2015-7-16 08:55
没看懂修复什么BUG,不会是修复老版本的吧

QQ截图20150716110014.png     哥  你可以去试试我修改过的和没有修改的  这个5.20的访问s
回复 支持 反对

使用道具 举报

结帖率:65% (28/43)

签到天数: 6 天

 楼主| 发表于 2015-7-16 10:59:44 | 显示全部楼层   四川省广元市
剩下我de孩子气 发表于 2015-7-16 07:37
现在的版本已经没有访问s了

又有更新版本了吗 不是5.20吗   还有5.20 是有增加访问s的  有post提交者方面的bug 的
回复 支持 反对

使用道具 举报

结帖率:100% (2/2)

签到天数: 1 天

发表于 2015-7-16 08:55:23 | 显示全部楼层   广东省汕头市
没看懂修复什么BUG,不会是修复老版本的吧
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 致发广告者

发布主题 收藏帖子 返回列表

sitemap| 易语言源码| 易语言教程| 易语言论坛| 易语言模块| 手机版| 广告投放| 精易论坛
拒绝任何人以任何形式在本论坛发表与中华人民共和国法律相抵触的言论,本站内容均为会员发表,并不代表精易立场!
论坛帖子内容仅用于技术交流学习和研究的目的,严禁用于非法目的,否则造成一切后果自负!如帖子内容侵害到你的权益,请联系我们!
防范网络诈骗,远离网络犯罪 违法和不良信息举报电话0663-3422125,QQ: 793400750,邮箱:wp@125.la
Powered by Discuz! X3.4 揭阳市揭东区精易科技有限公司 ( 粤ICP备12094385号-1) 粤公网安备 44522102000125 增值电信业务经营许可证 粤B2-20192173

快速回复 返回顶部 返回列表