У меня есть форма, которую я отправляю (через GET, как это требуется) в crm (ViciDial). Я могу успешно отправить форму, однако, если я это сделаю, файл обработки в crm просто отобразит текст успеха, и все.
Вместо этого текста я хочу отобразить страницу с благодарностью на своем веб-сайте, поэтому я решил использовать AJAX для отправки формы и перенаправления ее на нужную мне страницу, однако в моем браузере появляется эта ошибка:
Смешанный контент: страница https://page.com была загружена по HTTPS, но запросила небезопасную конечную точку XMLHttpRequest http://XX.XXX.XX.XXX/vicidial/non_agent_api.php?queries=query=data '. Этот запрос был заблокирован; контент должен обслуживаться по HTTPS.
Это мой сценарий AJAX:
<script>
SubmitFormClickToCall = function(){
jQuery.ajax({
url: "http://XX.XXX.XX.XX/vicidial/non_agent_api.php",
data : jQuery("#form-click-to-call").serialize(),
type : "GET",
processData: false,
contentType: false,
success: function(data){
window.location.href = "https://www.example.com/thank-you";
}
});
}
</script>
Простая установка https в URL-адресе не сработает, есть ли способ отправить данные через GET и перенаправить пользователя на мою страницу благодарности?
============================
Проблема здесь была в смешанном содержимом, это означает, что я загрузил страницу через HTTPS и пытался через AJAX использовать API, который был в HTTP. Но браузер не позволяет нам просто делать это.
Поэтому, если вы не можете настроить API на HTTPS (это был мой случай), мы все равно можем подойти к этому по-другому.
Основная проблема заключалась не в смешанном содержании, а в том, что я хотел отправить данные в API и перенаправить пользователей на красивую страницу с благодарностью. Вместо использования AJAX я создал файл php, который получает данные, отправляет их с помощью curl в API (поскольку это делается на стороне сервера, нет проблем со смешанным содержимым) и перенаправляет моего счастливого пользователя на красивую страницу с благодарностью.