当前位置: 首页 > news >正文

ServerXmlHttp和XmlHttp的一些总结

1.ServerXmlHttp

定义:ServerXMLHTTP 为不同 Web 服务器之间的服务器安全 HTTP 访问提供方法和属性。您可以使用此对象在不同的 Web 服务器之间交换 XML 数据。

被Microsoft XML Parser (MSXML) 版本 3.0 或更高版本提供,并且不支持windows95和windows98环境,支持windows2000,安装ie5的windows NT,windows2003以上版本,windows xp,vista等等系统。顾名思义他是使用在server端的组建。

SSL支持:

ServerXMLHTTP 组件在 MSXML3 中对 HTTPS 的支持比较有限。具体说就是,它们不完全支持用于身份验证的安全套接字层 (SSL) 证书。这些组件虽然支持 HTTPS 协议,但如果服务器要求客户端证书,请求将会失败。
ServerXMLHTTP 在 MSXML 3.0 Service Pack 1 中包括了 SSL 证书支持。

优点:

通过使用 ServerXMLHTTP,可以在本地和远程系统之间以流或 XML 文档的形式交换 XML 数据;由于基础协议为 HTTP 或 HTTPS,因此可以在防火墙后的系统之间交换数据;ServerXMLHTTP 可用于从不同的环境(如 Active Server Pages (ASP)、Microsoft Visual Basic 和 Microsoft Visual C++)发送 HTTP 请求。

缺陷:

同时存在于单一进程中的 ServerXMLHTTP 实例数主要取决于可用于系统上应用程序的内存大小。但是其他因素(如 CPU 处理能力或者可用的套接字连接)会进一步限制可以同时处于活动状态的实例数。就MSXML 3.0 而言,可同时存在于单一进程中的最大实例数为5460。

值得注意的特性----一小时超时:

如果你的目标url实际上不存在,使用浏览器访问的时候会发生“找不到服务器或是发生dns错误”那么使用serverxmlhttp访问的时候可能会遇到长时间得不到response。

解决方案--设置超时时间

resolveTimeout = 10000   ‘ 解析DNS名字的超时时间,10秒

connectTimeout = 10000    ‘ 建立Winsock连接的超时时间,10秒

sendTimeout = 120000     ‘ 发送数据的超时时间,120秒

receiveTimeout = 60000     ' 接收response的超时时间,60秒

xmlHttp.setTimeouts resolveTimeout, connectTimeout, sendTimeout, receiveTimeout

For Example:

BeginTimer = Timer()

BeiginTime = Now() 

On error resume next

dim xmlHttp As ServerXmlHttp

Set xmlHttp = New  ServerXmlHttp

 resolveTimeout = 10000   ' 解析DNS名字的超时时间,10

 connectTimeout = 10000    ' 建立Winsock连接的超时时间,10

 sendTimeout = 120000     ' 发送数据的超时时间,120

 receiveTimeout = 60000     ' 接收response的超时时间,60

  'xmlHttp.setTimeouts resolveTimeout, connectTimeout, sendTimeout,

receiveTimeout

    uRL ="http://202.118.89.4:4090/2333.asp"

    xmlHttp.Open "POST", sURL, False

    xmlHttp.send "1212312"EndTimer = Timer()

TimeSpan_Send = EndTimer - BeginTimer

 

EndTime = Now()

msgbox  uRL & " okay!TimeSpan=" & CStr(TimeSpan_Send) & ";start:" & BeiginTime & ";EndTime:" & EndTime

 

2.XMLHttp

与ServerXmlHttp相对应他是使用在client端的组建,由于 XMLHTTP 内部使用 WinInet,所以不支持在服务器端应用程序(例如 Active Server Pages (ASP))、宿主在 COM+ 中的组件,或 Windows 服务中使用 XMLHTTP。

优点:

XMLHTTP 具有一些优点,如支持缓存和自动发现代理。它可以在 Windows 95 和 Windows 98 平台上使用,并且非常适合单用户桌面应用程序。

支持SSL:

XMLHTTP 组件在 MSXML3 中对 HTTPS 的支持比较有限。具体说就是,它们不完全支持用于身份验证的安全套接字层 (SSL) 证书。这些组件虽然支持 HTTPS 协议,但如果服务器要求客户端证书,请求将会失败。

 

3.ServerXmlHttp和XmlHttp的区别

XMLHTTP 为客户端应用程序而设计,并依赖于基于 Microsoft Win32 Internet (WinInet) 而构建的 URLMon。ServerXMLHTTP 为服务器应用程序而设计,并依赖于新的 HTTP 客户端堆栈 WinHTTP。ServerXMLHTTP 提供了可靠性和安全性,并且是服务器安全的。

 

 

 

相关文章:

  • Session值不规律变化的一种可能解决方法
  • visual studio无提示错误发布失败解决方法
  • 应用程序池模板永久性缓存初始化失败
  • .Net IE10 _doPostBack 未定义
  • windows7变成wifi热点带动手机上网的方法
  • Evaluation version of Huge-ASP upload was expired
  • A potentially dangerous Request.Path value was detected from the client 异常
  • 修改ubuntu系统时间
  • Windows7蓝屏后产生的.dmp文件如何打开以及如何分析蓝屏的原因
  • 如何修改Linux系统时间 ubuntu
  • C#使用Create创建文件后,报The Process cannot access the file because it is being used by another process的异常
  • MySQL的show full processlist命令
  • asp没有权限解决方案
  • Asp获取真实IP地址
  • 判断是否是IP地址格式
  • hexo+github搭建个人博客
  • @angular/forms 源码解析之双向绑定
  • 【个人向】《HTTP图解》阅后小结
  • android高仿小视频、应用锁、3种存储库、QQ小红点动画、仿支付宝图表等源码...
  • Cumulo 的 ClojureScript 模块已经成型
  • ECS应用管理最佳实践
  • ES6 ...操作符
  • Java|序列化异常StreamCorruptedException的解决方法
  • node-sass 安装卡在 node scripts/install.js 解决办法
  • 阿里云容器服务区块链解决方案全新升级 支持Hyperledger Fabric v1.1
  • 初识MongoDB分片
  • 搭建gitbook 和 访问权限认证
  • 复习Javascript专题(四):js中的深浅拷贝
  • 快速构建spring-cloud+sleuth+rabbit+ zipkin+es+kibana+grafana日志跟踪平台
  • 如何抓住下一波零售风口?看RPA玩转零售自动化
  • 微信小程序--------语音识别(前端自己也能玩)
  • 消息队列系列二(IOT中消息队列的应用)
  • 小程序开发中的那些坑
  • 用jquery写贪吃蛇
  • 再次简单明了总结flex布局,一看就懂...
  • 大数据全解:定义、价值及挑战
  • # Apache SeaTunnel 究竟是什么?
  • #我与虚拟机的故事#连载20:周志明虚拟机第 3 版:到底值不值得买?
  • #预处理和函数的对比以及条件编译
  • (c语言版)滑动窗口 给定一个字符串,只包含字母和数字,按要求找出字符串中的最长(连续)子串的长度
  • (附程序)AD采集中的10种经典软件滤波程序优缺点分析
  • (附源码)计算机毕业设计ssm本地美食推荐平台
  • (附源码)计算机毕业设计SSM疫情社区管理系统
  • (免费领源码)python#django#mysql公交线路查询系统85021- 计算机毕业设计项目选题推荐
  • (十二)python网络爬虫(理论+实战)——实战:使用BeautfulSoup解析baidu热搜新闻数据
  • (转)Mysql的优化设置
  • (转)setTimeout 和 setInterval 的区别
  • .net 7 上传文件踩坑
  • .NET 8 中引入新的 IHostedLifecycleService 接口 实现定时任务
  • .net core 依赖注入的基本用发
  • .NET Remoting学习笔记(三)信道
  • .NET 解决重复提交问题
  • .net网站发布-允许更新此预编译站点
  • .考试倒计时43天!来提分啦!
  • /etc/motd and /etc/issue