Нормально, чтобы увидеть статус 204, затем статус 200? - PullRequest
2 голосов
/ 16 мая 2019

Я смотрю на свой запрос AJAX на вкладке сети в Chrome и замечаю, что каждый запрос AJAX, который я делаю, происходит дважды.

Сначала 204, а затем 200. Мой ajax-вызов срабатывает только один раз, поэтому я не уверен, почему их 2.

Редактировать

Так что, похоже, это связано с Cors, который я только что установил звездочкой (*) для тестирования.

Полагаю, я мало что могу сделать, чтобы он не выполнял 2 запроса, но что меня действительно привлекает, так это то, что это занимает так много времени, я смотрю на сеть Google Chrome, и на моей странице эти 204 заняли от 110 мс до 1,97 секунды.

Ответы [ 2 ]

2 голосов
/ 22 мая 2019

Когда вы пытаетесь отправить запрос AJAX в другой домен, вы нарушаете политику того же происхождения.

Сервер, к которому вы отправляете запрос, разрешает междоменные запросы.В процессе должен быть предварительный вызов, и это вызов HTTP OPTION.

Итак, у вас есть два ответа для OPTION и вашего результата.

1 голос
/ 22 мая 2019

Это является следствием CORS - протокола совместного использования ресурсов между источниками"протокол".

При выполнении запросов для других доменов браузер выполняет запрос перед вашим запросом, запрашивая сервер, может ли он выполнить этот запрос.

В этом запросе используется метод OPTIONS, и у него не должно быть содержимого, только заголовки ответа, поэтому код ответа 204 (без содержимого). После подтверждения того, что запрос разрешен, браузер выполнит ваш запрос, который теперь вернет 200 (или любой другой) код состояния.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...