ЙажаСценарий / Говнокод #6522 Ссылка на оригинал

0

  1. 1
  2. 2
  3. 3
  4. 4
  5. 5
  6. 6
Drupal.parseJson = function (data) {
  if ((data.substring(0, 1) != '{') && (data.substring(0, 1) != '[')) {
    return { status: 0, data: data.length ? data : Drupal.t('Unspecified error') };
  }
  return eval('(' + data + ');');
};

no comments. и как я понимаю нормальные люди делают eval завернутый в try

Запостил: brainstorm brainstorm, (Updated )

Комментарии (18) RSS

        • баян.
          обычно eval делается над темчто приходит с твоего же сервера по конкретному запросу.(да и JS другое вроде как и не должен позволять)
          Ответить
            • то есть я сам себе в своем JSON ответе своего приложения буду подсовывать левый код? оебу
              Ответить
                • ну бля. если юзеру надо - пусть лезет на сайт с отладчиком JS
                  меняет в нем переменную URL, и весь код так, чтобы json запрос ломился на другой домен.
                  ога. кстати ща это низя делать насколько я знаю.
                  Ответить
                    • ну так у нас без подкладок.
                      вообще понравилась реализация через new Function("return " + data) в jQuery.parseJSON больше чем eval. если на то пошло.
                      Ответить
            • Если не писать код как пидор, то eval не потребуется.
              Ответить
        • eval() представляет угрозу если вы, например, знаете, что страница которую вы открываете использует какие-нибудь значения из параметров с которыми ее открывают. Или она обращается к вашему сервису, и потом результат этого запроса попадает в eval(). Но если ваш скрипт страница загрузила используя <script> тег, то тогда уже не важно есть в загрузившем скрипте eval(), или нет, вы и так сможете сделать все что хотите.
          Ответить
    • говнокод как всегда разрывает слова в самом интересном месте...
      Ответить

Добавить комментарий

Где здесь C++, guest?!

    А не использовать ли нам bbcode?


    8