Задать вопрос
@lexstile

Почему у меня все запросы падают с политикой CORS, если код ответа не 200?

Есть метод, который дергаю с фронта:
public function callAccountAction() {
		sleep(1);
		
		http_response_code(403);
		// $this->sendResponse('error', ['error_code' => 1001, 'error_message' => 'Invalid request. Error code: 1001']);

		$data = $this->getStreamInput();
		
		$status = $this->ckeckSignature($_SERVER['HTTP_AUTHORIZATION']);
		
		if (!$status) {
			http_response_code(403);
		}
		
		if (empty($data->user->id)) {
			http_response_code(400);
		}

		if (!$this->model->isUserExists($data->user->id)) {
			$this->model->addUser($data->user);
			$this->sendResponse('success', ['status' => true, 'isInitial' => true]);
		}
		
		$this->sendResponse('success', ['status' => true]);
	}

Ставлю код ответа 403, сразу падет по CORS.
Мне на фронте нужно узнать статус ответа от сервера (если ставлю код ответа 200 - все работает корректно).
  • Вопрос задан
  • 198 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Skillfactory
    Профессия Fullstack веб-разработчик на JavaScript и PHP
    20 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Если у вас не CORS-безопасный запрос, то браузер сначала шлёт запрос OPTIONS, на который надо ответить с кодом 200 и выставлением необходимых CORS-заголовков.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽