Вот простая функция 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
может быть злом.