#jquery #json #ajax #vue.js
#jquery #json #ajax #vue.js
Вопрос:
Я делаю запрос к серверу через Ajax -Jquery, этот запрос возвращает более 2000 записей (около 16 000 записей)
В Google Chrome выполнен вызов, хотя это заняло около 40 секунд, но в Internet Explorer 11 выполнение отменено, и в консоли не отображается ошибка, он просто никогда не выполняет вызов.
Чтобы сократить время выполнения, я пытаюсь вызвать 1500 записей, в Google Chrome это работает отлично, но в Internet Explorer выполняется только первый вызов:
mostrar: function() {
this.loader = true;
$.ajax({
contentType: 'application/json;',
dataType: 'json',
type: 'POST',
url: ('Ajax.asp?rad=' this.radio1 'amp;offsetq=' this.limit),
data: 1,
success: function(e) {
if (app.radio1 == "0")
app.programas = e.programas;
if (e.continuar == "1" amp;amp; app.radio1 == "1") {
app.limit = e.conteo;
console.log(app.limit);
console.log("va a continuar");
// app.programas = (e.programas);
app.mostrar();
}
app.loader = false;
},
failure: function(e) {
console.log(e);
app.loader = false;
}
});
}
Я использую vue.js , но я выполняю вызовы с помощью Jquery, потому что axios представляет несовместимость с internet Explorer 11, в настоящее время этот код работает в chrome, edge, mozilla Firefox.
В Chrome он выполняет вызовы правильно, а в Internet Explorer он выполняет только вызов:https://i.imgur.com/C5wjbBc.png (chrome) https://i.imgur.com/Jk4F7Tj.png (Internet Explorer)
Комментарии:
1. Запрос отменяется немедленно или через какой-то период?
2. При первом запуске, однако в последующие разы этого не происходит, это происходит только в Internet Explorer.
3. Значит, работает только первый вызов? Похоже, проблема с кэшированием — попробуйте с
headers: { Pragma: "no-cache", "Cache-Control": "no-cache" }
4. Я обновил публикацию двумя изображениями, на которых видно, что в chrome он выполняет вызовы правильно, а в internet Explorer выполняет только cal: i.imgur.com/C5wjbBc.png (chrome) i.imgur.com/Jk4F7Tj.png (Internet Explorer)
5. Кажется, что изображение chrome описывается как IE и наоборот. Вы пробовали устанавливать заголовки запросов, как рекомендовано?
Ответ №1:
Возможно, исправьте contentType
и data
исправит вашу проблему. Попробуйте выполнить $.ajax
с этими параметрами:
$.ajax({
contentType: 'application/json',
dataType: 'json',
type: 'POST',
url: ('Ajax.asp?rad=' this.radio1 'amp;offsetq=' this.limit),
data: {},
...
});
К вашему СВЕДЕНИЮ: если вам не нужно отправлять какие-либо данные на сервер, возможно, лучше использовать GET
вместо POST