您的位置:程序门 -> web 开发 -> xml/soap



关于asp里xml的load问题


[收藏此页] [打印本页]选择字色:背景色:字体:[][][]


关于asp里xml的load问题
发表于:2007-03-21 17:17:34 楼主
通过asp生成xml很ez。。已经解决
假设有一个文件是xml.asp,通过response.write生成符合标准的xml

然后服务器上有另一个文件do/doit.asp
想用xml.load的方式调用xml.asp生成的内容。。。
一般调用方式是xml.laod( "../xml.asp ")

可是出错。

一天我突发奇想,用这样的方式。。。xml.load( "http://localhost/xml.asp ")
成功

又开始郁闷了。程序里满是绝对路径一定会出问题的

点解啊。。这样的情况应该怎么办呢。。一定要用这样的http绝对路径调用么?
发表于:2007-03-21 20:27:051楼 得分:0
xml.load(server.mapth( ". ")& "/filename.xml ")
发表于:2007-03-22 10:06:382楼 得分:0
二楼没有明白我的意思。。.xml当然没有问题。。但是例如rss这样通过asp本身生成xml,文件本身是asp文件。那如何load呢。。
发表于:2007-03-22 10:42:413楼 得分:0
在url路径中,无论该文件的扩展名是asp,还是php,还是aspx,他们只会对web服务端(比如iis,apache)对你访问文件的解析起到影响。

客户端在发出访问请求后,web服务端会解析该文件,然后返回给你,返回给你的格式,取决于该asp或php文件的定义,例如,在asp文件里注明了response.contenttype= "xml ",那么你的ie收到后,就会用xml的处理方式来处理这个文件。

发表于:2007-03-22 18:32:224楼 得分:0
这样,我写详细一点
例如xml.asp的内容为

<%
response.charset   =   "gb2312 "
response.contenttype= "text/xml "
response.expires=60
response.write( " <?xml   version= " "1.0 " "   encoding= " "gb2312 " "?> ")
response.write( " <item> list </item> ")
%>

而读取文件的读取方式为

<%
set   xmldoc   =   server.createobject( "microsoft.xmldom ")
xmldoc.load(server.mappath( "xml.asp "))
xmldoc.async   =   false

if   not   xmldoc.load(server.mappath( "xml.asp "))   then
response.write   ( "加载xml文件出错! ")
response.end()
end   if
%>

不知道楼上的是否明白我的意思了
这样读取就是false

但是,如果我用
xmldoc.load(server.mappath( "http://localhost/xml.asp "))
那么就是ok的

我是这个意思
发表于:2007-03-27 16:59:055楼 得分:0
顶一下
发表于:2007-07-27 09:55:566楼 得分:0
xmldoc.load(server.mappath( "xml.asp "))
这样load当然不行了,xml.asp没有执行,不能生成xml代码,load的是asp的代码啊

xmldoc.load( "http://localhost/xml.asp ")
“http://localhost/xml.asp”使xml.asp通过服务器执行了一次,生成了xml代码并response返回,load函数确实接收到了xml代码,才正确。这个执行的时候肯定会延迟一下,因为服务器在执行xml.asp代码


发表于:2007-08-01 11:09:497楼 得分:0
加了http://,则是远程文件,会先对localhost/xml.asp进行请求,而server则会执行xml.asp。如果只是../xml.asp,则会被认为是一个本地文件。
但是,你要做的动作,通常可以用xmlhttp来实现。
发表于:2007-08-02 04:33:278楼 得分:0
很不错啊   ,谢谢
发表于:2007-08-02 04:34:069楼 得分:0
学习编程太费力了吧?


快速检索

最新资讯
热门点击