Я пытаюсь понять, как включить JavaScript извне, чтобы код печатался на странице.Печать кода JavaScript из внешнего файла
Когда я вставляю JavaScript непосредственно в код страницы, он печатает «привет»
<html>
<head>
<title></title>
</head>
<body>
<script type="text/javascript">document.write("hello");</script>
</body>
</html>
Однако, когда я ставлю тот же код во внешний файл сказать «javascript.js» и включить его (ЦСИ) в html он не печатает «привет»?
<html>
<head>
<title></title>
<script type="text/javascript" src="http://thewebsite.com/javascript.js"></script>
</head>
<body>
</body>
</html>
Я пытаюсь понять, как получить этот внешний файл JavaScript для запуска и распечатать «привет». Как работает XSS, если хакер должен был включить следующий тег внутри, скажем textarea
, чтобы вызвать его вредоносный скрипт с вредоносного сервера?
<script type="text/javascript" src="http://thewebsite.com/javascript.js"></script>
Heres Что в файле «javascript.js»:
<script type="text/javascript">
document.write("hello");
</script>
Файл находится на том же домене, так же происхождения политика не должна применяться здесь и как уже упоминалось, если я непосредственно вставить код это делает но не тогда, когда я пытаюсь включить в отдельный файл.
Я думал, что в том числе JavaScript как внешний файл, должен печатать содержимое внешнего файла (т. Е. «Привет» в этом случае), как если бы он был непосредственно вставлен на страницу html?
Не могли бы вы рассказать, что вы получаете на консоли? И какой браузер вы используете. Я могу получить то, что вы пытаетесь сделать. – Ajai
Тег в вашем файле javascript не нужен
Правильная
Если содержимое не записывается, предположительно, вместо этого возникает ошибка. Проверьте консоль ошибок для своего браузера.
Проблема заключается в том, что вы включаете теги HTML-скриптов в файл JavaScript. Файлы JavaScript должны содержать только JavaScript.
Это не делает. Политика одного и того же происхождения просто запрещает запуск JavaScript (не загружается из) Origin A из чтения данных из Origin B. Поскольку данные включены в сам скрипт, он все равно будет доступен, даже если скрипт был загружен из Origin B.
источник
2012-03-13 13:54:20 Quentin