js отправить данные формы в http с https - PullRequest
0 голосов
/ 08 мая 2020

Как заголовок. Система, которую я разрабатываю, имеет адрес https://A.com/. Мне нужно открыть новое окно по адресу http://A.com/mth и передать параметры (массив строк, уже объединенных запятыми, например K1, K2, K3, ..., Kn), точно так же, как открытие новое окно показывает http://B.com/mth?keys=K1, K2, K3, ..., Kn . Но я не могу передать строку запроса, потому что это может сделать URL-адрес слишком длинным.

Я использую метод post в форме с моим параметром, кстати, точно так же, как Window.open and pass параметры почтовым методом

HTML:

<form id="form1" action="http://A.com/mth" target="_blank">
<input type="hidden" name="keys" id="iptkey" />
</form>

А потом, JS о POST ....

var f=document.getElementById("form1");
f.keys.value=keys.join(",");
f.submit();

Я не прошел когда Я увидел сообщение: «Страница с адресом https://A.com была загружена через безопасное соединение, но содержит форму, предназначенную для небезопасных конечных точек http://A.com/mth ....... «Как я могу использовать JavaScript для достижения своей цели и решения этой проблемы?

1 Ответ

1 голос
/ 08 мая 2020

Вы не можете сделать HTTP-запрос при использовании протокола HTTPS.

Это из-за Политики одинакового происхождения .

Политика одинакового происхождения ограничивает вас от взаимодействия с другими источниками с другим портом, хостом или протоколом.

Здесь HTTP и HTTPS - это два разных протокола, поэтому вы не можете выполнить запрос.

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