ajax接收数据不用json(ajax接受数据)
导读:当我们使用AJAX向服务器请求数据时,通常会将响应数据格式化成JSON格式,然后再将其传回网页上的JavaScript脚本。然而,并不是所有的服务器都能够返回符合JSON规范的数据,有些服务器可能返回纯文本格式的数据,这时我们可以通过一些技...
当我们使用AJAX向服务器请求数据时,通常会将响应数据格式化成JSON格式,然后再将其传回网页上的JavaScript脚本。然而,并不是所有的服务器都能够返回符合JSON规范的数据,有些服务器可能返回纯文本格式的数据,这时我们可以通过一些技巧来解析这些数据。
假设我们向服务器发送的请求如下:
var url = "http://example.com/some_data";
var xhr = new XMLHttpRequest();
xhr.open("GET", url, true);
xhr.onreadystatechange = function() {
if (xhr.readyState === 4 &
&
xhr.status === 200) {
var responseText = xhr.responseText;
// 如何解析纯文本格式的数据?}
}
;
xhr.send();
上述代码中,我们使用XMLHttpRequest对象向一个URL发送GET请求,并在服务器响应到达时执行回调函数。请求返回的是纯文本数据,我们该如何解析它呢?
一种常见的解决方式是使用正则表达式。例如,如果返回的数据格式为每行一个记录,以逗号分隔各个属性,我们可以使用以下代码解析它:
var responseText = xhr.responseText;
var records = [];
var lines = responseText.split("\n");
for (var i = 0;
i上述代码将请求返回的文本数据按照换行符拆分成多行,然后再按照逗号拆分成多个字段。接下来,我们将每个字段依次赋值给字典对象的相应属性,并将这个字典对象添加到记录数组中。最后,我们输出记录数组,以验证解析结果。
这种解析方式虽然看起来有些麻烦,但它可以让我们处理各种不同的数据格式。当然,在返回数据时,如果服务器能够将数据格式化成JSON格式,我们仍然强烈建议使用JSON.parse()方法进行解析。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: ajax接收数据不用json(ajax接受数据)
本文地址: https://pptw.com/jishu/315546.html
