我正在寻找一个很小的(一个班轮)Ajax JavaScript库来添加一个小的脚本的第一行,以发出一些请求。
我已经尝试过:
x
微ajax
但是它们根本不起作用。备择方案?
这很简单:
function createXHR() { var xhr; if (window.ActiveXObject) { try { xhr = new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) { alert(e.message); xhr = null; } } else { xhr = new XMLHttpRequest(); } return xhr; }
文档在这里
例:
var xhr = createXHR(); xhr.onreadystatechange = function() { if (xhr.readyState === 4) { alert(xhr.responseText); } } xhr.open('GET', 'test.txt', true) xhr.setRequestHeader('Content-type', 'application/x-www-form-urlencoded'); xhr.send()
更新:
为了进行跨域脚本编写,您必须调出本地服务器端代理(读取并回显远程数据),或者,如果您的远程服务返回JSON,请使用以下方法:
var s = document.createElement('script') s.src = 'remotewebservice.json'; document.body.appendChild(s);
由于JSON本质上是JavaScript对象或数组,因此这是有效的来源。从 理论上讲, 您应该可以直接调用远程服务。我尚未对此进行测试,但这似乎是一种公认的做法:
参考:在AJAX中调用跨域Web服务