чистка пользовательского ввода (sanitize) идет еще до попадания данных в базу
А если данные из стороннего API и не известно, были ли они очищены?
экранируется обычно весь результат
Вместе с нужной разметкой, которая была в переводах? (см. пример с кнопкой)
Спасибо. Извините, что докучаю, но вопросы системного характера, хотелось бы понимать, есть ли системные решения, или каждый отдельный случай нужно огораживать костылем.
Приведу пример из жизни. Пользователю в веб-приложении отображается инструкция к части его интерфейса, структура инструкции задается в файле перевода (то есть код, выводящий строку с инструкцией, не знает, какая именно инструкция там написана). В этой инструкции присутствует изображение кнопки, которое должно в точности соответствовать внешнему виду кнопки в веб-приложении. Стиль кнопки задается CSS-темой оформления, которых множество, то есть скриншотить кнопку и вставлять картинку каждый раз, когда меняется или добавляется новая тема — не вариант. Соответственно, нужно вставить кусок разметки, представляющий собой кнопку, к которой автоматически применятся стили темы. Этот сценарий как-то предусмотрен?
Второй пример из жизни: вывод данных, введенных пользователем, в подстановке. Данные пользователя теоретически могут содержать разметку, которую нужно экранировать. На каком уровне вы это делаете? Экранируете ли от разметки всё, что попадает в подстановку? Тогда как избегаете двойного экранирования при вложенных подстановках?
Расскажите, как осуществляется подстановка одних кусков фраз в другие, когда обе содержат разметку? Как осуществляется экранирование спецсимволов, в том числе при подстановке пользовательских данных и одних кусков фраз в другие?
Вы используете слово «интернет» с маленькой буквы, как, насколько я помню, рекомендует Лебедев. Грамота.ру рекомендует с большой ( gramota.ru/slovari/dic/?word=%E8%ED%F2%E5%F0%ED%E5%F2&all=x ). Не могли бы пояснить свою точку зрения по этому разногласию? Часто приходится упоминать Всемирную сеть в текстах и сообщениях пользователю приложения.
Правда, он, к сожалению, несколько неаккуратно сделан с точки зрения потока данных — ломается, если данные приходят порциями, отличными от тех, которые отправляет AR.Drone (например, буферизуются с меньшим размером буфера до попадания на декодер).
Спасибо. Теперь понятно, этого алгоритма в тексте поста и не хватало, чтобы понять, что происходит на самом деле и почему конструктор BigDecimal(double), напротив, работает точно.
А если данные из стороннего API и не известно, были ли они очищены?
Вместе с нужной разметкой, которая была в переводах? (см. пример с кнопкой)
Спасибо. Извините, что докучаю, но вопросы системного характера, хотелось бы понимать, есть ли системные решения, или каждый отдельный случай нужно огораживать костылем.
Приведу пример из жизни. Пользователю в веб-приложении отображается инструкция к части его интерфейса, структура инструкции задается в файле перевода (то есть код, выводящий строку с инструкцией, не знает, какая именно инструкция там написана). В этой инструкции присутствует изображение кнопки, которое должно в точности соответствовать внешнему виду кнопки в веб-приложении. Стиль кнопки задается CSS-темой оформления, которых множество, то есть скриншотить кнопку и вставлять картинку каждый раз, когда меняется или добавляется новая тема — не вариант. Соответственно, нужно вставить кусок разметки, представляющий собой кнопку, к которой автоматически применятся стили темы. Этот сценарий как-то предусмотрен?
Второй пример из жизни: вывод данных, введенных пользователем, в подстановке. Данные пользователя теоретически могут содержать разметку, которую нужно экранировать. На каком уровне вы это делаете? Экранируете ли от разметки всё, что попадает в подстановку? Тогда как избегаете двойного экранирования при вложенных подстановках?
Спасибо.
Например,
или,
ИМХО, это неплохая фича, более полезная, чем беспроводная зарядка.
всёвсе под контролем.Вы используете слово «интернет» с маленькой буквы, как, насколько я помню, рекомендует Лебедев. Грамота.ру рекомендует с большой ( gramota.ru/slovari/dic/?word=%E8%ED%F2%E5%F0%ED%E5%F2&all=x ). Не могли бы пояснить свою точку зрения по этому разногласию? Часто приходится упоминать Всемирную сеть в текстах и сообщениях пользователю приложения.
Для него кроме официального SDK, который мне показался достаточно неудобным в практическом использовании, есть вполне работающий сторонний самодельный декодер:
dronecontroller.codeplex.com/SourceControl/latest#Wilke.Interactive.Drone.Control/Helpers/VideoImage.cs
code.google.com/p/javadrone/source/browse/javadrone-api/src/main/java/com/codeminders/ardrone/data/decoder/ardrone10/video/BufferedVideoImage.java
Правда, он, к сожалению, несколько неаккуратно сделан с точки зрения потока данных — ломается, если данные приходят порциями, отличными от тех, которые отправляет AR.Drone (например, буферизуются с меньшим размером буфера до попадания на декодер).
1.1
вdouble
при использованииvalueOf(double)
сохранится, поскольку double представляется в IEEE754?Кстати, в посте еще одна опечатка:
— должно быть от string: