Допустимо ли использование JavaScript eval? - PullRequest
0 голосов
/ 25 февраля 2012

Я делаю сайт и хочу использовать следующий дизайн:
Каждый раз, когда пользователь нажимает на ссылку, отправляется запрос ajax.
Ответ содержит 2 поля:

  • HTML, который заменяет область содержимого
  • JavaScript для оценки (поведение JavaScript, привязанное к объектам с новым содержимым HTML)

Есть ли у этого использования JavaScript eval () какие-либо недостатки?

Редактировать

JavaScript, который должен быть оценен, различен - его нельзя выразить разумно с помощью одной функции, принимающей разные аргументы.
Был упомянут межсайтовый скриптинг, но я не вижу, как это использование отличается от того, что пользователь посещает новую JavaScript-содержащую страницу.

Ответы [ 2 ]

2 голосов
/ 25 февраля 2012

Это в основном зависит от того, как генерируется JavaScript для оценки. Любое использование eval может быть предметом межсайтового скриптинга, но только если js генерируется чем-то, что пользователь может контролировать. Если сервер возвращает статический js, это не хуже по своей сути, чем использование js где-либо еще.

1 голос
/ 25 февраля 2012

Не могу думать ни о чем, хотя моему воображению может быть немного не хватает.) Кроме того, не является ли JSONP чем-то из того же метода?

...