这是一个简单的 Ajax 函数,您可以使用它来获取脚本的内容:
function get(url, callback) {
var request = new XMLHttpRequest();
request.open("GET", url, true);
request.onreadystatechange = function() {
if(this.readyState === 4) {
if(this.status >= 200 && this.status < 400) {
callback.apply(this, [this.responseText, this]);
} else {
// something went wrong.
}
}
};
request.send();
}
由于您需要设置自定义标头,因此您还可以使用request.setRequestHeader 方法,如下所示:
function get(url, callback) {
var request = new XMLHttpRequest();
request.open("GET", url, true);
// BEGIN: CUSTOM HEADERS
request.setRequestHeader("Header-Name", "header/value");
request.setRequestHeader("Other-Header", "other/value");
// END: CUSTOM HEADERS
request.onreadystatechange = function() {
if(this.readyState === 4) {
if(this.status >= 200 && this.status < 400) {
callback.apply(this, [this.responseText, this]);
} else {
// something went wrong.
}
}
};
request.send();
}
最后,你会像这样使用这个函数:
get("url/to/your/script", function(response) {
// perform checks...
window.eval(response);
});
警告:非常、非常在使用eval时要小心,千万不要eval你不信任的东西请记住eval 可能是邪恶的。