Ajax:获取服务端XML数据(responseXML、content-type)

XML:用于存储和传输数据,关注的是数据的内容

HTML:用于展示数据,关注的是数据的外观

平时使用response来获取服务端的响应数据;对于XML数据需要使用responseXML来获取。

客户端获取到的responseXML有着和document类似的获取标签元素对象的方法

从而可以从存在标签的响应数据中获取到被包裹在内的值

<body>
    <!-- XML:用于存储和传输数据,关注数据的内容 HTML:用于展示数据,关注数据的外观 -->
    <button id="btn">发送请求</button>
    <div id="container"></div>
    <script>
        var btn = document.getElementById('btn');
        var container = document.getElementById('container');
        btn.onclick = function() {
            var xhr = new XMLHttpRequest();
            xhr.open('get', '/xml');
            xhr.send();
            xhr.onload = function() {
                // xhr.responseXML来获取服务器端返回的XML数据
                var xmlDocument = xhr.responseXML;

                // xmlDocument获取到的XML存在同html中类似的方法
                var content = xmlDocument.getElementsByTagName('content')[0].innerHTML;
                container.innerHTML = content;
            }
        }
    </script>
</body>

服务端需要配置响应头的内容类型为xml类型,然后将xml内容响应给客户端 

app.get('/xml', (req, res) => {
    // 设置响应头告诉客户端返回的是xml数据
    res.header('content-type', 'text/xml');

    res.send('<message><title>善</title><content>积善者必有余庆</content></message>');
})

 测试结果:(点击按钮后发送请求,响应请求,获取响应数据,插入到页面中显示数据内容)

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值