绿色风's Blog
专注AutoIT(Au3)
  • 首页
  • 流●年
  • 笔●记
    • 学习随记
    • 源码示例
  • 脚●本
    • UDF(收集)
    • 工作室UDF
    • 工具●教程
    • 教程之GDI
  • 作●品
  • 下●载
  • 情怀ExcelTip
1月22016

解压WinHttp返回gzip格式的数据流

作者:绿色风   发布:2016-1-2 10:02 Saturday   分类:   阅读:15803次   评论:0条  

转载于:ACN站 user11

写了个小程序,使用了WinHttp_GetRespond,但是返回数据格式是gizp压缩过的,Content-Encoding: gzip

怎么显示出明码呢,原来用xmlhttp是可以自动解压的,

winhttp如何让数据自动显示出来,谢谢~!

去官网down了个好东西,nb啊,作者Kudo这样写的,本来zlib是要dll的,然后作者写了个UDF,因为他穷开心,因为他会写

To use zLib in AutoIt, the easiest way is download the DLL, and then just use it by DllCall, or warp it by my 

But now I convert zLib to machine code version UDF, because "just for fun", or because I can.

https://www.autoitscript.com/forum/topic/128962-zlib-deflateinflategzip-udf/

     >>   ZLIB_UDF下载 <<

#include<WinHttp.au3>
#include<zlib.au3>

$sURL = "http://abc.com/xyz.html" ;测试而以

$hOpen = _WinHttpOpen("Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.9.0.3; .NET CLR 2.0.50727; ffco7) Gecko/2008092417 Firefox/3.0.3")

$hConnect = _WinHttpConnect($hOpen, $sURL)

;~ $hRequest = _WinHttpSimpleRequest($hConnect)
$aRequest = _WinHttpSimpleRequest($hConnect, Default,Default,Default,Default,'Accept-Encoding: gzip',1,2)

ConsoleWrite($aRequest[0]);
$charset = 0
If StringRegExp($aRequest[0], "(?im)^Content-Type:\h.*?charset\h*=\h*utf-?8") Then $charset = 4
If StringRegExp($aRequest[0], "(?im)^Content-Encoding:\h+gzip") Then
    $sResponse = BinaryToString(_ZLIB_GZUncompress($aRequest[1]), $charset)
Else
    $sResponse = BinaryToString($aRequest[1], $charset)
EndIf
MsgBox(0,"",$sResponse)

_WinHttpCloseHandle($aRequest)
_WinHttpCloseHandle($hConnect)
_WinHttpCloseHandle($hOpen)








本文固定链接: http://www.jianyiit.com/post-160.html

blogger
该日志由 绿色风 于2016-1-2 10:02 Saturday发表在 分类下。
版权所有:《绿色风's Blog》 → 《解压WinHttp返回gzip格式的数据流》;
除特别标注,本博客很多文章均为原创. 互联分享,尊重版权,转载请以链接形式标明本文地址;
本文标签:

扫描二维码,在手机上阅读
上一篇::AU3检测系统运行时间
下一篇:Win服务器定时计划任务

热门文章

相关文章

  • AU3更改壁纸例子
  • 获取当前系统 的DPI值
  • base64图片数据解密转图片
  • AU3复制/移动文件的进度条显示方法
  • au3对【变量】的混合输出,便于程序调试测试
取消回复

发表评论

亲,头像对么?

85 + 87 =

提交中,请稍候……


木有头像就木JJ啦!还木有头像吗?点这里申请属于你的个性Gravatar头像吧!


    站点统计
    • 运行时间: 20254 天
    • 日志总数: 365 篇
    • 评论数量: 7239 条
    • 微语数量: 6 条
    • 附件总量: 388 件
  • 逝出的青春

  • 打赏"绿色风"



      扫码关注本站公众号 可搜本站内容

  • Autoit V3 脚本交流群

      常驻群1:905774875
      常驻群2:40672266


  • 链接

    • AU3中文论坛
    • Excel资料库
    • 完美者博客
    • 顺网小哥'S Blog
    • 猛牛哥的博客
    • 网吧系统下载
  • 分类

    • 流●年(66)
    • 笔●记(0)
    • 脚●本(0)
    • 作品(21)
    • 学习随记(51)
    • 源码示例(68)
    • UDF(收集)(26)
    • 工作室UDF(30)
    • 工具●教程(62)
    • 教程之GDI(24)
Copyright © 2013 绿色风's Blog. Powered by emlog. Theme by 射雕天龙. 鄂ICP备2021011689号-1 鄂公网安备42102302000078号 sitemap