НП, я также обновил это
воде javascript в окне консоли браузера:
1)
Следующий код работает:
alert('hi');
2)
Следующее не делает:
(function() {
var scr = document.createElement('script');
scr.src = 'http://www.myrandomwebsite.com/myjs.js';
document.head.appendChild(scr);
myfunc();
})()
гдеmyjs.js папка содержит:
var myfunc = function(){alert('hi')};
Объясняя 2) фрагмент кода, введенный в этом случае, приводит к появлению следующего кода в концезаголовок тег в исходном коде:
<script src="http://www.myrandomwebsite.com/myjs.js"></script>
но функцияMyFunc не распознается, потому что я получаю следующее сообщение об ошибке:
VM132: 5 Uncaught ReferenceError: myfunc не определен
Это заставляет меня поверить, что в качестве меры безопасности браузеры не запускают код JavaScript, который редактируется после загрузки страницы, или что-то в этом роде.
ВОПРОС: Есть ли какой-нибудь обходной путь здесь? Будь то функция, которая работает какrequire('...');
в большинстве языков программирования.но это не может быть установив любое специальное расширение, просто то, что работает на лету.
Я много передвигаюсь и работаю на разных компьютерах, и мне очень хотелось бы иметь возможность использовать часть моего кода без необходимости всегда носить с собой USB.
________________________ОБНОВИТЬ ________________________
Решение, предложенное @Jared Smith, сработало отлично. Сейчас есть один случай, когда это не работает (и я понимаю, почему). Когда у сайта есть Content-Security-Policy, которая не позволяет загружать скрипты с других URL-адресов или загружать любые соединения:
например:
Content-Security-Policy: script-src 'self' https://apis.google.com
Content-Security-Policy: connect-src 'self' https://apis.google.com
И это имеет смысл. Моя ситуация такова, что у меня есть собственный код, который я запускаю, однако я хотел иметь возможность хранить этот код на другом сайте и использовать его, когда я путешествую или нахожусь на других компьютерах, без необходимости извлекать их из USB.
Теперь я понимаю сайты, занесенные в белый список, из каких источников скрипты загружаются по соображениям безопасности, но я не понимаю, почему нет исключения, когда это делаетсяконсоль разработчика, CSP в основном используется для предотвращения XSS-атак и тому подобного, но тот, кто находится в консоли, специально использует код и функции тестирования.
ВОПРОС: Есть ли какая-то функция в консоли, которая позволяет загружать сценарии с альтернативного сайта? Я возился сФрагменты исходного скрипта но не смогли найти вариант. Или может быть какая-то другая не связанная работа?