以文本方式查看主题

-  计算机科学论坛  (http://bbs.xml.org.cn/index.asp)
--  『 DOM/SAX/XPath 』  (http://bbs.xml.org.cn/list.asp?boardid=11)
----  新手请教!XML信息如何用HTTP传输  (http://bbs.xml.org.cn/dispbbs.asp?boardid=11&rootid=&id=18775)


--  作者:yyn911
--  发布时间:5/24/2005 3:05:00 PM

--  新手请教!XML信息如何用HTTP传输
我想用HTTP传输XML信息(XML信息不从文档读,自己编写的),接收端可以对其解析,可以添加,修改==


在线等


--  作者:reelcol
--  发布时间:5/24/2005 4:31:00 PM

--  
我也想知道,困扰了好几天了

想交流     qq: 41633361   (注明:xml)


--  作者:simonezhlx
--  发布时间:5/26/2005 2:53:00 PM

--  
帮你up
--  作者:hacken
--  发布时间:6/9/2005 9:06:00 AM

--  
me too
--  作者:binaryluo
--  发布时间:6/9/2005 11:29:00 AM

--  
如果你指的是想从网站上读取一个XML文件的话,如果用java,那可以先建立一个URL对象,然后通过该对象的openConnection()方法建立一个URLConnect对象。。。然后可以创建一个输入流(InputStream),这个流作为XML DOM或SAX的输入就可以了,跟解析本地XML是一样的。
--  作者:CharlesXavier
--  发布时间:6/17/2005 4:01:00 PM

--  
路过。QQ:276733345
--  作者:lazing
--  发布时间:7/2/2005 10:34:00 AM

--  
这两天也在做这方面的学习,找到一篇文章,调试了可以用
也许对你有用:可以实现XML的远程读取

http://blog.csdn.net/vwarship/archive/2004/07/02/xmlhttp.aspx

[转贴]用XMLHTTP协议传输XML数据
最近做了一个项目,用XMLHTTP协议来传输XML格式的数据,以前用的是MFC中的类库,要写不少代码。最近正在研究XML,发现用XMLHTTP协议传输XML格式的数据非常简单。下面来看看从服务器端传送数据到客户端。

首先,准备一个xml文件(resume.xml)放在服务器端;

<?xml version="1.0" encoding="GB2312"?>

<!-- 注意如果需要传输汉字这里必须规定是gb2312 -->

<简历>

     <个人简历>

         <名字>王军建</名字>

         <性别>男</性别>

          <年龄>23</年龄>

     </个人简历>

     <个人简历>

         <名字>谷穗</名字>

         <性别>女</性别>

         <年龄>22</年龄>

     </个人简历>

</简历>

然后,开始写一个asp文件(resume_post.asp)放在服务器端,用来发送xml格式的数据;

<%@ language="javascript" %>

<%

  //在服务器端创建Document对象

  //这里用的ProgID是通用的,即服务器端安装的是3.0版本,程序就会用3.0版本来解析;

//服务器端安装的是4.0版本,程序就会用4.0版本来解析。如果你想就依赖于版本的,

//那么像3.0用Msxml2.DOMDocument.3.0;4.0用Msxml2.DOMDocument.4.0

var xmldom=Server.CreateObject("Microsoft.XMLDOM");

//注意:服务器端一定要用 Server.MapPath() 来确定路径。

xmldom.load( Server.MapPath("resume.xml") );

Response.ContentType = "text/xml";

//注意:这里一定是”GB2312”,否则客户端就会是乱码。

Response.charset = "GB2312";

//将DOM对象保存到Response对象

xmldom.save(Response);

%>

注意:将resume.xml和resume_post.asp两个文件放在服务器端的同一个目录下,如果要在本地调试,要将两个文件放入同一虚目录下。

最后,在客户端用VC建立一个接收程序。这里建立了一个控制台应用程序。

#include "msxml2.h"

#import "msxml4.dll"

using namespace MSXML2;

#include <iostream>

using namespace std;

void GetXmlData();

void main()

{

     //初始化COM环境

     CoInitialize(NULL);

     

     GetXmlData();

     

     //结束COM环境

     CoUninitialize();

}

void GetXmlData()

{

     IXMLHTTPRequestPtr pIXMLHTTPRequest = NULL;

     IXMLDOMDocumentPtr pIXMLDOMDocument = NULL;

     HRESULT hr;

     try

     {

         //将IXMLHTTPRequestPtr对象实例化

         hr = pIXMLHTTPRequest.CreateInstance(TEXT("Microsoft.XMLHTTP"));

         SUCCEEDED(hr) ? 0 : throw hr;

         

         //初始化一个MSXML2.XMLHTTP协议的请求,

//需要为请求指定方法、URL、验证信息等。

         //第一个参数用"GET",代表向服务器端请求数据。

         //第二个参数用来指定服务器具体的文件

         //第三个参数代表是否异步传输,false代表同步传输;true代表异步传输。

         //第四和第五个参数是用来验证用户名和密码的,一般不用。

         //注意这里的地址要变成你自己存放该文件的地址

         LPCTSTR pUrl = TEXT("http://10.67.47.141:9999/xml/experience/resume_post.asp";);

         hr = pIXMLHTTPRequest->open(TEXT("GET"), pUrl, false);

         SUCCEEDED(hr) ? 0 : throw hr;

         //发送一个请求到服务器并且接收一个response对象

         hr = pIXMLHTTPRequest->send();

         SUCCEEDED(hr) ? 0 : throw hr;

         //用从服务器端接收的Document对象将IXMLDOMDocumentPtr对象实例化

         pIXMLDOMDocument = pIXMLHTTPRequest->responseXML;

         //将Document对象中所有数据的XML描述

         cout<<"GetXmlData:"<<endl;

         cout<<(LPCSTR)(pIXMLDOMDocument->xml)<<endl;

     }

     catch(...)

     {

         cout<<"GetXmlData Exception"<<endl;

     }

}


--  作者:java_liubin
--  发布时间:7/31/2005 3:28:00 PM

--  
通过HTTP传诵的数据是二进制流数据,你直接把XML数据通过HTTP传送过去不就完了吗,真是的,跟传其他的文件没任何区别
W 3 C h i n a ( since 2003 ) 旗 下 站 点
苏ICP备05006046号《全国人大常委会关于维护互联网安全的决定》《计算机信息网络国际联网安全保护管理办法》
280.762ms