如何获取xmlhttp请求返回xml数据节点的值
通过xmlhttp请求http://xxx/xxx.jsp返回结果为
<?xml version="1.0" encoding="GBK" ?>
<info>
<user>xxx</user>
<result>1</result>
</info>
请高手指点,如何获取result节点的值呢?
自己从网上找资料写了如下代码:
C# code
using MSXML2;
protected void Page_Load(object sender, EventArgs e)
{
MSXML2.XMLHTTPClass x = new XMLHTTPClass();
MSXML2.DOMDocument40 xmlDom= new DOMDocument40();
try
{
x.open("Post", "http://xxx/xxx.jsp", false, "", "");
x.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
x.send("");
}
finally
{
if (x.status / 100 == 2)
{
xmlDom.loadXML(x.responseXML.ToString()); //这里报错
}
}
Response.Write(xmlDom.selectSingleNode("/info/result").text);
}
但最终报错:
检索 COM 类工厂中 CLSID 为 {88D969C5-F192-11D4-A65F-0040963251E5} 的组件时失败,原因是出现以下错误: 80040154。
网上搜了资料没解决。
由于时间有限,所以请有经验的朋友帮忙想想办法,最好是根据题目给我参考源码,问题解决立马给分,谢谢!
------解决方案--------------------
没有权限,在注册中搜索88D969C5-F192-11D4-A65F-0040963251E5然后给network用户权限
------解决方案--------------------
xmlDom.loadXML(x.responseText);
------解决方案--------------------
需要提醒的一点:ajax/javascript不能跨域操作
------解决方案--------------------
xmlhttprequest不能跨域访问,只能用一个服务器语言作为代理才可以
加载完xml后用
var dom= new DOMDocument(); dom.loadXML(返回的xml文件),
使用
xmlDom.selectSingleNode(节点名).text 来访问
------解决方案--------------------up
------解决方案--------------------
解决就好