Używam usługi, która automatycznie tworzy i obsługuje strony uruchamiania. W ciele swojego kodu, mają one wezwanie do jQuery:Jak zapobiec zewnętrznemu żądaniu JS
<script type="text/javascript" src="//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js?cache=2015-09-22-09">
Niestety, ponieważ jestem w Chinach, googleapis.com jest zablokowany, a strona musi czekać na ten kod, aby limit czasu, zanim zostanie on odpłaca . Ta część jest automatycznie generowana jako część szablonu i nie można jej zmienić. Jednak mogę wstawić niestandardowy javascript w głowie i ciele.
Czy mogę zapobiec temu, że ten kod nie spowoduje wysłania żądania do witryny googleapis.com lub zmusić go do przerwania po złożeniu wniosku?
-EDIT-
Oto czapka ekran na karcie sieciowej, gdy próbuję załadować stronę. Jak widać, połączenie z witryną googleapis.com zawiesza się na 1,4 minuty, aż do przekroczenia limitu czasu, w którym to momencie następuje wywołanie DomContentLoaded i załadowanie całej strony.
na celu wyjaśnienie, czy jesteś w stanie włożyć niestandardowego kodu w głowie _above_ tym ''
Rozważ używanie Content Security Policy. Byłby to nietypowy przypadek użycia, ale dzięki CSP możesz powiedzieć przeglądarce, że nie ma dostępu do witryny googleapis.com, zanim twój rząd nie wypowie się w tej sprawie. W ten sposób przeglądarka nawet nie spróbuje go załadować, a strona nie zawiesi się.
Źródło
2015-09-22 12:32:42
dzięki za odpowiedź! Myślę, że mogłem być nieco niejasny z mojego sformułowania. Edytuję zablokowany szablon, który jest udostępniany innym osobom. Chciałbym uniemożliwić temu szablonowi wywoływanie wywołania googleapi. Mam możliwość wstawienia niestandardowego javascript w nagłówku i treści szablonu. – enfieldacademy
Hmm. Jestem skłonny powiedzieć, że nadchodzi czas, w którym musisz narysować linię. Przestań próbować obejść uciążliwe ograniczenia arbitralnego szablonu i twórz własne rzeczy. W ten sposób wszelkie ograniczenia, które masz (np. Niemożność uzyskania dostępu do Google), można rozwiązać w rozsądny sposób. Poważnie, zastanów się, ile godzin masz zamiar wydać (lub * wydałeś *!) Na ten temat, w porównaniu do czasu, który możesz zaoszczędzić, samemu kodując. Obejścia są receptą na migrenę później. –
Tak. Sugestia @ Niet wydaje się miła. Aby dodać do swojej odpowiedzi, oto jak można blokować renderowanie domenie googleapi użyciu CSP:
Content-Security-Policy: script-src 'self';
Ten kod będzie instruować przeglądarkę tylko wykonywanie skryptów własną domenę za.
Źródło
2015-09-22 12:41:23 mehulmpt
Jeśli masz dostęp do serwera internetowego i jego okien, możesz dodać wpis w pliku Hosts, aby przekierować adres google do aplikacji internetowej serwera lokalnego, aby pobrać tam javascript? (Jeśli dopasować strukturę folderów javascript link)
Źródło
2015-09-22 13:48:36 WraithNath