В другом вопросе я спросил, можно было сделать так:
<script type = "text/javascript" src = "/js/myScipt.js?v=3"></script>
а затем получить значение v в myScipt.js с помощью jQuery или JavaScript. Судя по всему, да, это можно сделать так:
var getV = document.currentScript.src.split("?v=")[1]; // JS
var getV = $('script').last().attr("src").split("?v=")[1]; // jQuery
Мой новый вопрос: создаю ли я какую-либо угрозу безопасности, которую можно использовать, делая это? Если да, то есть ли способ очистить значение queryString, чтобы устранить риск?
В случае, если это имеет значение, myScript.js использует jQuery для вставки в страницу некоторого HTML-кода, который он создает (некоторые элементы div и изображение) на основе некоторых условий.
eval()
, то, очевидно, у вас проблема с межсайтовым скриптом. Если вы пишете его в HTML-разметке (например, с помощьюinnerHTML
,$el.html()
илиdocument.write()
), то у вас возникает проблема с внедрением HTML, которая также приводит к межсайтовому скриптингу. Если вы безопасно создаете HTML, используя текст DOM и свойства атрибутов, тогда все в порядке. - person bobince   schedule 29.10.2016