web-dev-qa-db-fra.com

Depuis la v38, Chrome ne peut plus se charger à partir des URL HTTP, solution?

Les utilisateurs de notre site Web exécutent notre Chrome qui, entre autres, exécute des demandes cross-Origin via XMLHttpRequest comme décrit sur les pages de développement d'extension Chrome . Cela a été fonctionne très bien depuis quelques années maintenant. Cependant, depuis que nos utilisateurs sont passés à la dernière version de Chrome (v38), ces demandes ont échoué. Notre site fonctionne sur HTTPS et certaines URL. chargés via notre script de contenu sont sur HTTP. Le message est:

[bloqué] La page sur ' https://www.ourpage.com/ ' a été chargée via HTTPS, mais son contenu n'était pas sécurisé à partir de ' http://www.externalpage.com ': ce contenu doit également être chargé via HTTPS.

La ligne signalée où l'erreur s'est produite se trouve dans le script de contenu où j'émets l'appel HTTP:

xhr.send(null);

Je n'ai aucun contrôle sur la page externe et je préfère ne pas supprimer SSL de notre propre page. Question: Est-ce un bug ou existe-t-il une solution de contournement que je ne connais pas?

(Remarque: les autorisations dans le manifeste ont toujours été définies sur <all_urls> qui travaillait depuis longtemps. Le définir sur http://*/ et https://*/ n'a pas aidé.)

15
Oliver

Si possible, utilisez la version https de cette page externe.

Si ce n'est pas possible, utilisez la page d'arrière-plan pour gérer la demande AJAX ( exemple ).

10
Rob W