服务端XMLHTTP(ServerXMLHTTP in ASP)基本应用(上)
作者:xujiwei 来源:HotHeart's BLOG 时间:2008-11-11 12:49:00
在上一篇《服务器XMLHTTP(Server XMLHTTP in ASP)基础》中我介绍了一下ServerXMLHTTP对象的一些基本属性和方法,接下来我讲讲ServerXMLHTTP的基本应用。
在ServerXMLHTTP中,异步请求不再是主要用途,往往是同步的请求用得更多,因为在服务端编程中,程序的执行是需要迅速结束并返回结果的,不像在桌面程序中,有一个消息循环。这样就导致了在服务端编程中,同步编程用得更多。当然,这并不是说异步请求没有用处,在一定的情况下,异步请求会有很大的作用。
1. 简单的使用ServerXMLHTTP请求并显示指定Url
首先来看一下很简单的例子,使用ServerXMLHTTP请求Google的首页并显示出来:
程序代码:
<%@LANGUAGE="JScript" CODEPAGE="65001"%>
<%
// code from xujiwei
// http://www.xujiwei.cn
var url = "http://www.google.cn";
var xmlhttp = new ActiveXObject("MSXML2.ServerXMLHTTP.5.0");
xmlhttp.open("GET", url, false);
xmlhttp.send("");
Response.BinaryWrite(xmlhttp.responseBody);
xmlhttp = null;
%>
在浏览器查看这个页面,你就可以看到Google的首页了:
但是,我们可以看到,这里的Logo图片是没有显示的,因为这个logo在网页源代码里是以相对路径的方式来指定的:
<img src=/intl/zh-CN/images/logo_cn.gif width=286 height=110 border=0 alt="Google" title="Google">
但是,我们的测试服务器里并没有这个图片文件,因此浏览器就会显示此图片的替代文字“Google”。
这里我使用了xmlhttp的responseBody属性,这是因为,在不知道所请求的网页是使用什么编码的情况下,可以让浏览器来处理这个问题,而不用在服务器处理编码。如果要在服务器处理编码,你必需知道你所请求的URL所返回的内容是使用什么编码的,并且正确的将返回内容进行转码以使得客户端浏览器能正常的显示。
例如,我们请求Baidu的首页,就会因为编码问题而导致页面完全错乱:
所以,使用或者responseBody,完全取决于我们的需要,并不是一成不变的,或者,在某些时候,我们要使用的并不是这两个中的一个,而是responseXML:)


猜你喜欢
sqlserver 聚集索引和非聚集索引实例
python实现飞机大战

MySQL做读写分离提高性能缓解数据库压力

Go基于GORM 获取当前请求所执行的 SQL 信息(思路详解)

使用批处理脚本自动生成并上传NuGet包(操作方法)

MySQL 通过索引优化含ORDER BY的语句
跟老齐学Python之用while来循环

Python中的if、else、elif语句用法简明讲解
python opencv旋转图像(保持图像不被裁减)

mysql查询字段类型为json时的两种查询方式

用"表情符号"做植入广告 是否可行呢?
全网首秀之Pycharm十大实用技巧(推荐)

Python自动化测试PO模型封装过程详解

fckeditor编辑器在php中的配置方法
Python数组拼接np.concatenate实现过程

Python之进行URL编码案例讲解
