易语言实地培训长期招生 QQ1615457736

乐易论坛

 找回密码
 立即注册

微信登录

微信扫码,快速开始

QQ登录

用QQ账号登陆

导航
导航
培训
培训
产品
产品
易歪歪客服聊天助手——永久免费
验证码识别/打码平台/谷歌人机验证/
阿里云服务器最高¥1888云产品通用代金券我要租广告
易歪歪客服聊天助手——永久免费各类验证码定制,注册赠送¥588礼包,点击领取阿里云服务器低至10元/月我要租广告
易歪歪客服聊天助手——永久免费接码打码最高2000云产品通用代金券我要租广告
查看: 6493|回复: 3
收起左侧

[网络教程] 转,wininet,winhttp,xmlhttprequest,ServerXmlHttpRequest区别

[复制链接]
  • TA的每日心情

    2018-11-7 20:28
  • 签到天数: 16 天

    [LV.4]偶尔看看III

    发表于 2017-3-6 21:17:32 | 显示全部楼层 |阅读模式

    wininet,winhttp,xmlhttprequest,ServerXmlHttpRequest各版本区别






    一、标准API接口WinINet(Microsoft Windows Internet)和WinHTTP(Microsoft Windows HTTP)

    实现Http访问,微软提供了二套API:WinINet, WinHTTP(分别封装于system32目录下的wininet.dll和winhttp.dll内)二者主要区别在于后者更为安全和稳定,可以说WinHTTP是WinINet的升级版



    二、COM对象XMLHttpRequest和WinHttpRequest和ServerXMLHTTPRequest

    XMLHttpRequest是基于WinInet封装的,而WinHttpRequest和ServerXMLHTTPRequest则是基于WinHTTP封装的所以三者的稳定性属XMLHttpRequest为最差封装成COM形式主要是为了方便Js vbs等脚本的调用,还具有易书写、降低开发难度等许多特点把



    三、对象版本和封装位置

    1、XMLHttpRequest对象版本和对应的封装dll文件

    Microsoft.XMLHTTP 对应 msxml.dll

    MSXML2.XMLHTTP 对应 msxml2.dll

    MSXML2.XMLHTTP.3.0 对应 msxml3.dll

    MSXML2.XMLHTTP.4.0 对应 msxml4.dll

    MSXML2.XMLHTTP.5.0 对应 msxml5.dll(此版本是伴随office2007发布的,所以目录下可能找不到该版本的dll)

    MSXML2.XMLHTTP.6.0 对应 msxml6.dll

    如上各个dll的发布一般都是以补丁的形式发布,win7默认都集成了吧



    2、ServerXMLHTTP对象版本和对应的封装dll文件

    Msxml2.ServerXMLHTTP 对应 msxml2.dll(win7自带,下同!)

    Msxml2.ServerXMLHTTP.3.0 对应 msxml3.dll

    Msxml2.ServerXMLHTTP.4.0 对应 msxml4.dll

    Msxml2.ServerXMLHTTP.5.0 对应 msxml5.dll

    Msxml2.ServerXMLHTTP.6.0 对应 msxml6.dll



    3、WinHttpRequest对象WinHttp.WinHttpRequest.5.1 对应 Winhttp.dll

    (如上高版本的通常稳定性会好一点)



    四、对象成员(属性、方法、事件等),主要优缺点

    XMLRequest成员参考缺点:和浏览器挂钩,大多情况下会共享cookies,session,不支持单独设置代理优点:和浏览器挂钩,大多情况下会共享cookies,session

    ServerXMLHTTP成员参考缺点:系统没有对应dll的情况下程序需要外gua一个dll文件优点:脱离浏览器,使用代理方便

    WinHttpRequest成员参考缺点:暂无优点:脱离浏览器,使用代理方便




    五、总结

    如果你对WinInet或Winhttp比较熟悉的话当然推荐直接使用标准接口,但同样要付出的代价就是书写更多的代码,记住更多的参数就个人开发经验而言还是推荐大家使用WinHttpRequest对象,微软封装的COM还是很优秀的,应该足以应付大多数要求了





    另外微软给出了对比:


    WinHTTP vs. WinINet




    根据本人测试:

    Microsoft.XMLHTTP

    MSXML2.XMLHTTP

    这2个对象相比其他对象速度要快五分之四,这是非常离谱的,不知道为什么


    本帖子中包含更多资源

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    易语言实地培训,报名联系QQ 1615457736
    [超强]《易语言软件加密(防破解)技术特训》
    回复

    使用道具 举报

    该用户从未签到

    发表于 2017-12-5 19:57:56 | 显示全部楼层
    写的很好............
    易语言实地培训,报名联系QQ 1615457736
    [超强]《易语言软件加密(防破解)技术特训》
    回复

    使用道具 举报

    该用户从未签到

    发表于 2017-12-15 17:28:33 | 显示全部楼层
    学习了,谢谢
    易语言实地培训,报名联系QQ 1615457736
    [超强]《易语言软件加密(防破解)技术特训》
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    擦汗
    2018-2-24 07:45
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2018-2-24 07:53:20 | 显示全部楼层

    学习了,谢谢
    易语言实地培训,报名联系QQ 1615457736
    [超强]《易语言软件加密(防破解)技术特训》
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    关闭

    乐易推荐上一条 /6 下一条

    QQ|网站地图|Archiver|手机版|小黑屋|乐易论坛 ( 湘ICP备19007035号-2 )

    GMT+8, 2020-1-22 04:06 , Processed in 0.111561 second(s), 92 queries .

    Powered by Discuz! X3.4 Licensed

    © 2001-2017 Comsenz Inc.

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