PUT на вкладке Close не завершен
При закрытии вкладки браузера я пытаюсь автоматически сохранить изменения пользователя. Я проверил это работает в других точках графика времени; та же функция используется. Я называю это в unload
обработчик:
$( window ).unload(function() {
saveAnnotations(pdfState.pdfs[pdfState.activePdfIndex].PdfPages[pdfState.activePageIndex]);
});
Сохранение изменений пользователя включает в себя RESTful PUT внутри saveAnnotations
функция, используя библиотеку Oboe:
oboe({
url: configuration.rootApiUrl + 'PdfPages/' + page.ID,
method: 'PUT',
body: page
}).done(function(jobs) { // Our call does not provide a callback
if(callback !== undefined && _.isFunction(callback)) {
callback();
}
});
Сервер, получающий это, является сервером Microsoft Web API. Я запускаю клиент и сервер локально для тестирования.
При диагностике этого я отредактировал приведенный выше код, чтобы он был GET, а не PUT, и он достиг точки останова внутри маршрута на сервере. Однако при выполнении PUT я не достигаю точки останова внутри этого маршрута сервера на закрытии вкладки. Почему это работает для GET, а не PUT? Что я должен сделать, чтобы сервер мог получить мой PUT? Я догадываюсь, что это на стороне клиента, а не на стороне сервера. Если было бы полезно увидеть маршрут сервера, я могу опубликовать его, но в остальном я не хочу загромождать вопрос.