Запись файла json для вызова JQuery ajax jsonp - PullRequest
0 голосов
/ 01 мая 2020

У меня есть сочетание проблем, которые вместе являются сложными. Чтобы начать одновременные вызовы ajax GET при загрузке страницы, я начал писать $ .when (). Then (), как показано ниже:

function whenStart(passdata) {
    $.when(getAJAX(empcasesjsonurl), getAJAX(reportcasesjsonurl))
        .then(function(data1,data2) { showData(data1,data2,passdata); })
        .fail(function(xhr, status, error) { console.log("getAJAX ERROR: " + error + ", " + xhr.status + ", " + xhr.statusText); });
}

Перед добавлением одновременных вызовов, подобных этим, мои json файлы на сервере была обернута в функцию с именем callBack следующим образом, чтобы воспользоваться возможностью перекрестного происхождения ajax GET jsonp:

callBack([
    [
        {
            "inputid": "height",
            "inputval": "333"
        },
        {
            "caseid": "NPYy3q",
            "casebirth": 1584124928894,
            "expire": true,
            "username": "aaa"
        }
    ],
    [
        {
            "inputid": "height",
            "inputval": "222"
        },
        {
            "caseid": "NPPPPP",
            "casebirth": 1584124928884,
            "expire": true,
            "username": "aaa"
        }
    ]
]);

Вот мой оригинальный вызов ajax:

function getAJAX(jsonurl) {
    return $.ajax({
        dataType: "jsonp",
        type: "GET",
        url: jsonurl,
        jsonpCallback: 'callBack',
        async: true,
    });
}

Как и ожидалось, я часто, но не всегда получаю "get AJAX ОШИБКА: ошибка: callBack не был вызван, 200, загрузка" из-за проблемы JQuery, имеющей проблемы с использованием того же имени функции (callBack) одновременно.

Мое решение состояло в том, чтобы прекратить определять jsonpCallback, чтобы JQuery выполнял свою обычную работу jsonp со случайными именами функций обратного вызова. Однако как я могу обернуть мой json файл в правильное имя функции? Мне кажется, что я что-то упускаю из-за того, как работает генерация и использование jsonp automati c arg или как я должен записывать файл json на сервер.

...