Frage

Ich habe ein Greasemonkey-for-IE Skript in IE9 bekam die jQuery importieren. Aber auf sicheren Seiten es nicht funktioniert.

Ich erhalte:

SEC7111: HTTPS security is compromised by http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js

Der Code, der nicht ist:

var script = document.createElement("script");
script.setAttribute("src", 
    "http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js");

Wie kann ich diese Arbeit machen? Das Skript stellt kein Problem in Firefox verursachen.

War es hilfreich?

Lösung

Vermutlich: Verwenden Sie https: //ajax.googleapis .com / ajax / libs / jquery / 1.4.2 / jquery.min.js statt (oder einem dritten nicht vertrauen CDN (beide vertrauenswürdig und nicht gefährdet) für Ihre sichere Seiten sein)

Andere Tipps

Sie können mit einfacher Code, um das Problem zu beseitigen, indem ein Schema-relative URL wie folgt aus:

var script = document.createElement("script");
script.setAttribute("src", 
   "//ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js");

Dieses http:// auf einer http:// Seite und https:// auf einer https:// Seite verwenden ... eine viel einfachere Art und Weise, das Problem zu lösen.

Die Fehlermeldung ist neue Art der IE der Warnung über gemischte Inhalte (HTTP und HTTPS-Ressourcen auf einer sicheren Seite). hier ist eine verwandte MSDN Blog-Post.

Mit

https://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.js

als auch scheint zu funktionieren, obwohl ich nicht einen offiziellen Verweis darauf in der Bibliotheken API Übersicht.

Das Problem ist, dass, wenn Sie im sicheren Modus sind (dh HTTPS), werden alle Dateien, die von der Seite geladen auch HTTPS sein muss. Die JQuery sind Sie machen hier ist HTTP.

Sie müssen erkennen, ob die Seite in HTTP- oder HTTPS-Modus (Verwendung window.location.protocol()), und stellen Sie die URL des JQuery Anzug umfassen. (Alles was man braucht, ist die zusätzliche 's' nach 'http')

Sie verwenden https-Verbindung und Sie eine HTTP-Verbindung zugreifen zu können.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top