Istnieje rozszerzenie przeglądarki Firefox, które dodaje nagłówki CORS do każdej odpowiedzi HTTP działającej w najnowszej wersji przeglądarki Firefox ( kompilacja 36.0.1 ) wydanej 5 marca 2015 r . Przetestowałem to i działa zarówno na Windows 7, jak i na Mavericks. Przeprowadzę Cię przez wszystkie kroki, aby to działało.
1) Uzyskanie rozszerzenia
Możesz pobrać xpi stąd (kompilacje autorskie) lub stąd
(kopia lustrzana, może nie być aktualizowana).
Lub pobierz pliki z GitHub. Teraz jest również w Firefox Marketplace: Pobierz tutaj . W takim przypadku dodatek jest instalowany po kliknięciu przycisku instalacji i można przejść do kroku 4.
Jeśli pobrałeś xpi, możesz przejść do kroku 3. Jeśli pobrałeś zip z GitHub, przejdź do kroku 2.
2) Budowanie xpi
Musisz rozpakować plik zip, dostać się do folderu „cors-wszędzie-firefox-addon-master”, zaznaczyć wszystkie elementy i spakować je. Następnie zmień nazwę utworzonego pliku ZIP na * .xpi
Uwaga: jeśli używasz interfejsu GUI OS X, może on tworzyć ukryte pliki, więc lepiej byłoby używać wiersza poleceń.
3) Instalowanie xpi
Możesz po prostu przeciągnąć i upuścić xpi do przeglądarki Firefox lub przejść do: „about: addons”, kliknąć zębatkę w prawym górnym rogu i wybrać „zainstaluj dodatek z pliku”, a następnie wybrać plik .xpi. Teraz uruchom ponownie przeglądarkę Firefox.
4) Uruchomienie tego
Teraz rozszerzenie nie będzie działać domyślnie. Musisz przeciągnąć ikonę rozszerzenia na pasek rozszerzeń, ale nie martw się. Są zdjęcia!
- Kliknij menu Firefox
- Kliknij Dostosuj
- Przeciągnij CorsE do baru
- Teraz kliknij ikonę, gdy będzie zielona, nagłówki CORS zostaną dodane do każdej odpowiedzi HTTP
5) Testowanie, czy działa
jQuery
$.get( "http://example.com/", function( data ) {
console.log (data);
});
JavaScript
xmlhttp=new XMLHttpRequest();
xmlhttp.onreadystatechange = function() {
if (xmlhttp.readyState == 4) {
console.log(xmlhttp.responseText);
}
}
xmlhttp.open("GET","http://example.com/");
xmlhttp.send();
6) Uwagi końcowe
Zauważ, że https do http nie jest dozwolone .
Może istnieje sposób na obejście tego problemu, ale to leży poza zakresem pytania.