你可以使用其他格式的XML旁边与XMLHttpRequest的?

我的理解JSON可以用来代替的XMLHttpRequest在Javascript,但我可以提出请求,并得到完全任意的数据备份?

就像一个自定义的文本或二进制格式?

或者是仅限于JSON和XML的接口?

我希望我通过什么我不知道在这里得到...

一)如何创建没有XML或JSON一个普通的要求吗?

二)我如何访问结果(答案)作为一个普通的字符串,而不是一个对象?

--------------解决方案-------------

是的,只要设置内容类型:

var request = new XMLHttpRequest();
request.setRequestHeader("Content-Type", "text/plain;charset=UTF-8"); // whatever character set you need.
request.open("GET", "yourtext.txt", true);
request.onreadystatechange = function() {
if(this.readyState == 2) {
alert(request.responseText);
}
}
request.send();

您可以使用任何基于文本的格式:XML,JSON,CSV,或者只是text/plain

我不知道,如果你尝试使用二进制格式会发生什么。

你可以得到的结果早在

  • 一个DOM文档(如果收到XML)的使用responseXML属性,或
  • 使用responseText属性的字符串(不论格式)

有些浏览器也可以将其作为对象返回,如果它是JSON。

找回东西作为一个字符串的能力,可以让你分析自己的任何格式。

您可以发送之前明确地将内容类型设置为纯文本():

var request = new XMLHttpRequest();
request.open("POST", "/test.php");
request.setRequestHeader("Content-Type", "text/plain;charset=UTF-8");
request.send(message);

除了 ​​提的职位setRequestHeader方法:这似乎是W3规格xmlhttprequest API只是强加(建议)限制为header (即第一个参数),但不为value (也就是第二个参数)。

这里的链接规格:http://www.w3.org/TR/XMLHttpRequest/#the-setrequestheader-method。

AFAIC,这意味着任何数据类型是有效的,只要所要求的传输而言。 这并不延伸到但返回的数据,因为只有文本和xml指定。

我可能是错的,但。

分类:JavaScript的 时间:2015-03-15 人气:0
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.702 (s). 10 q(s)