Я занимаюсь сайтом социальной сети и сталкиваюсь с проблемой ... например, когда пользователь публикует что-то или комментарии о статусе, а затем, где я должен санатировать данные, такие как разделяя tagged friends
и hastags
и т. д. Я, вероятно, более смущен после того, как встретил twitters [(twitter-text-js)][1]
... так как он санатизирует содержимое клиентской стороны и затем отправляет его на сервер ... Было бы здорово, что некоторые из вас могут пролить некоторые свет на нем .. Заранее спасибо, где для санации данных клиентская сторона или сторона сервера
ответ
Данные санитарии должны происходить на стороне сервера. Все, что вы делаете на стороне клиента можно обойти (например, если вы делаете это с JavaScript -> злоумышленник просто отключает JavaScript.)
По соображениям удобства использования вы можете дополнительно реализовать его на стороне клиента.
, то почему твиттер использует этот текст-js для –
меньше замен на сервере делает более легкую обработку нагрузки, почему бы не сделать 99,99% законных клиентов делать это для них бесплатно? Когда у вас есть такой трафик, маленькие вещи, подобные этому, складываются в большую экономию, чем потребляют многие сайты. он также позволяет жить превью и тому подобное, если вы знаете, как выйдет твит ... – dandavis
Это неправда. современные webapps просто ** не работают ** с отключенным javascript (facebook, gmail и бесчисленными другими), поэтому, хотя я согласен, что санитария должна произойти на серверной стороне, все равно стоит иметь отказоустойчивое решение на клиент также не причиняет вреда. – vsync
Всегда проверяйте и обрабатывайте данные на стороне сервера, даже если вы делаете это на стороне клиента. Также важно очищать данные, используя что-то вроде htmlentities() и/или htmlspecialchars() при отображении данных из базы данных.
Научитесь использовать подготовленные заявления PDO для вставки данных в вашу базу данных, так как вам не нужно беспокоиться о дезинфекции данных перед началом работы.
http://net.tutsplus.com/tutorials/php/why-you-should-be-using-phps-pdo-for-database-access/
- 1. Timechecking: сторона сервера или клиентская сторона?
- 2. Серверная сторона или клиентская сторона (AJAX) Загрузка
- 3. Кэш - это клиентская сторона или серверная сторона?
- 4. Изменение размера. Клиентская сторона или серверная сторона?
- 5. Где создать html? Сервер или клиентская сторона?
- 6. Parse Django - серверная сторона сервера или клиентская сторона?
- 7. Загрузка и обработка изображений, сторона сервера или клиентская сторона?
- 8. svg to pdf клиентская сторона или сторона сервера C#, js?
- 9. Серверная сторона MVC + Клиентская сторона MVC
- 10. Где моя клиентская сторона socket.io?
- 11. Один продукт (сторона сервера/клиентская сторона 1/клиентская сторона 2 ...) в одном хранилище git
- 12. GWT "database" (клиентская сторона)
- 13. Auth0 decoupled клиентская сторона/серверная сторона
- 14. Ruby: клиентская или серверная сторона?
- 15. Структура данных AngularJS: клиентская сторона или API?
- 16. asp.net форма проверка. Серверная сторона или клиентская сторона
- 17. Посещение отслеживания - серверная сторона/клиентская сторона
- 18. Клиентская сторона проверки боба
- 19. Nodejs и PHP (клиентская сторона)
- 20. Клиентская сторона ASP.NET CustomValidator
- 21. Серверная или клиентская сторона для получения твитов?
- 22. Клиентская сторона onthefly видеогенерация
- 23. Reporting Services Клиентская сторона
- 24. Где Flash делает подсчет? Сервер - клиентская сторона?
- 25. Клиентская сторона XSLT
- 26. PHP-клиентская сторона на стороне сервера
- 27. LESS клиентская сторона
- 28. Клиентская сторона против шаблона на стороне сервера
- 29. Долгосрочная клиентская сторона для опроса
- 30. Интернационализация на стороне сервера и клиентская сторона?
Почему бы и нет? Я бы сказал, что backend - это абсолютная необходимость. – jboneca
Я тебя не понял. –
Вы должны включить проверку пользовательского ввода на стороне клиента, но поскольку многие из этих методов можно обойти, вы всегда должны санировать вход пользователя на бэкэнд. – jboneca