Полезная нагрузка тела POST с полным изменением местоположения - PullRequest
0 голосов
/ 29 апреля 2020

Я сделал тонны запросов с полезной нагрузкой тела, но все они были асинхронными c.

Теперь в браузере есть специальная поддержка для отправки форм, даже если форма указана на внешний URL.

Мне нужен синхронный вызов с полным изменением местоположения для запроса POST с полезной нагрузкой тела, а не с данными формы. Поведение должно быть точно таким же, как form.submit(), но вместо отправки данных формы я смогу добавить полезную нагрузку тела перед отправкой запроса.

Краткая форма: как вы можете запустить POST запрос с полезной нагрузкой Content-Type: application/json body, который также выполняет полное изменение местоположения, как в родном браузере form.submit()?

Примечания:

1) Я не сталкивался с preflight checks все же, что было бы распространенным сценарием при подписании запроса с Content-Type: application/json, но на данный момент CORS не имеет значения

2) Я не могу POST и затем изменить местоположение как 2 отдельных действия, разрешение запроса выполняется на основе содержимого JSON содержимого тела.

3) Я знаю, как это сделать асинхронно c, я просто спрашиваю, возможно ли это сделать с помощью полная замена местоположения, в точности как form.submit()

Как бы вы это сделали? Мне не нужна вся реализация, только подсказки.

1 Ответ

0 голосов
/ 29 апреля 2020

Вам нужно добавить event.preventDefault(); For и затем позвонить function, чтобы изменить местоположение

<form onsubmit="event.preventDefault(); CallFun();">

function CallFun()
{
   //ajax request 
   window.location.replace("http://stackoverflow.com");
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...