Maison > développement back-end > tutoriel php > Comment corriger l'erreur « Contenu mixte bloqué » pour les appels AJAX sur les sites HTTPS ?

Comment corriger l'erreur « Contenu mixte bloqué » pour les appels AJAX sur les sites HTTPS ?

Barbara Streisand
Libérer: 2024-11-27 19:23:11
original
318 Les gens l'ont consulté

How to Fix the

Résolution de l'erreur « Contenu mixte bloqué » pour les opérations HTTP AJAX dans les pages HTTPS

Lorsque vous essayez d'effectuer une opération HTTP AJAX à partir d'une page HTTPS, vous pouvez rencontrer le message « Erreur "Contenu mixte bloqué". Cela se produit lorsque le navigateur détecte une requête HTTP non sécurisée effectuée à partir d'une page HTTPS sécurisée.

Pour résoudre ce problème, vous pouvez utiliser les solutions suivantes :

1. Utilisez une méthode HTTP appropriée

Si l'API cible prend en charge HTTPS, vous devez mettre à jour votre requête AJAX pour utiliser le protocole HTTPS :

url: "https://XX.XXX.XX.XX/vicidial/non_agent_api.php",
Copier après la connexion

2. Utiliser une balise méta de politique de sécurité du contenu

Si la modification du protocole API n'est pas possible, vous pouvez ajouter la balise méta suivante à la page HTML pour autoriser le contenu mixte :

<meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests">
Copier après la connexion

Cela demandera au navigateur de mettre automatiquement à niveau les requêtes HTTP non sécurisées vers HTTPS, résolvant ainsi le problème de contenu mixte.

3. Utiliser un proxy côté serveur

Si les solutions précédentes ne sont pas viables, vous pouvez créer un script proxy côté serveur qui reçoit la requête HTTP AJAX et la transmet à l'API cible à l'aide de HTTPS :

<?php
// Read and parse incoming data
$data = $_GET;

// Send data to API via HTTPS
$result = file_get_contents("https://XX.XXX.XX.XX/vicidial/non_agent_api.php?queries=" . http_build_query($data));

// Redirect user to thank-you page
header("Location: https://www.example.com/thank-you");
?>
Copier après la connexion

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal