
- •Архитектура Web-приложений
- •Краткое описание архитектуры asp.Net и .Net Framework
- •Архитектура .Net Framework
- •Краткие итоги
- •Создание Web-приложений в среде Delphi
- •1. Особенности
- •2. Достоинства
- •3. Интеграционная роль веб-технологий
- •Сайты и страницы, сервисы, порталы
- •Структура протокола http
- •Методы запросов протокола http
- •Коды состояния протокола http
- •Пример диалога по протоколу http
- •Клиентские скрипты
- •Серверные скрипты
- •1. Ключи
- •2. Индексирование
- •3. Субд Mysql
- •8. Установка соединения
- •9. Выбор базы данных
- •10. Получение списка полей таблицы
- •10.1. Синтаксис Mysql_list_fields
- •11. Запись данных в базу данных
- •11.1. Синтаксис Mysql_query
- •Отображение данных, хранящихся в Mysql
- •1. Добавление записей
- •2. Выбор записей
- •3. Удаление записей
- •1. Принцип атаки внедрения sql
- •2. Методика атак типа внедрение sql-кода
- •3. Защита от атак типа внедрение sql-кода
- •1. Принцип атаки внедрения sql
- •1.1. Внедрение в строковые параметры
- •1.2. Использование union
- •1.4. Экранирование хвоста запроса
- •1.5. Расщепление sql-запроса
- •2. Методика атак типа внедрение sql-кода
- •2.1. Поиск скриптов, уязвимых для атаки
- •3. Защита от атак типа внедрение sql-кода
- •3.1. Фильтрация строковых параметров
- •3.2. Фильтрация целочисленных параметров
- •3.3. Усечение входных параметров
- •3.4. Использование параметризованных запросов
- •1. Вступление
- •2. JavaScript вкратце
- •Специфика клиентского языка
- •11. Внедрение Java Script в html
- •12. Обработка событий
- •Масштабируемость
- •Вопросы проектирования, касающиеся быстродействия и масштабируемости
1. Вступление
При генерации страниц в Web возникает дилемма, связанная с архитектурой «клиент-сервер». Страницы можно генерировать как на стороне клиента, так и на стороне сервера. В 1995 году специалисты компании Netscape создали механизм управления страницами на клиентской стороне, разработав язык программирования JavaScript. Таким образом, JavaScript – это язык управления сценариями просмотра гипертекстовых страниц Web на стороне клиента. Основная идея JavaScript состоит в возможности изменения значений атрибутов HTML-контейнеров и свойств среды отображения в процессе просмотра HTML- страницы пользователем. При этом перезагрузки страницы не происходит. На практике это выражается в том, что можно, например, изменить цвет фона страницы или интегрированную в документ картинку, открыть новое окно или выдать предупреждение. Название JavaScript является собственностью Netscape. Реализация языка, осуществленная разработчиками Microsoft, официально называется Jscript. Версии JScript совместимы (если быть совсем точным, то не до конца) с соответствующими версиями JavaScript, т.е. JavaScript является подмножеством языка JScript. JavaScript стандартизован ECMA (European Computer Manufacturers Association – Ассоциация европейских производителей компьютеров). Соответствующие стандарты носят названия ECMA-262 и ISO-16262. Этими стандартами определяется язык ECMAScript, который примерно эквивалентен JavaScript 1.1. Отметим, что не все реализации JavaScript на сегодня полностью соответствуют стандарту ECMA. В рамках данного курса мы во всех случаях будем использовать название JavaScript.
2. JavaScript вкратце
Понятие объектной модели применительно к JavaScript
Свойства
Методы
События
Размещение кода на HTML-странице
URL-схема JavaScript
Обработчики событий, подстановки и вставка
Размещение кода внутри HTML-документа
Иерархия классов
Поле location
Управление окнами
Контейнер FORM
Текст в полях ввода
Кнопки
Картинки
Обмен данными
Строки
Числа
Массивы
Создание эффекта изменения изображения. Добавление и удаление элементов.
Работа с текстом
Объект Document
Литература
3. JavaScript. Обзор
Возможности ядра языка
4. Значения, переменные и литералы
Здесь рассматриваются значения, распознаваемые в JavaScript, и даётся описание фундаментальных строительных блоков выражений JavaScript: значений, переменных и литералов.
5. Выражения и операции
Здесь рассматриваются выражения и операции JavaScript, в том числе: операции присвоения, сравнения, арифметические, побитовые, логические строковые и специальные.
6. Регулярные выражения
Регулярные выражения являются патэрнами, используемыми при поиске совпадений комбинаций символов в строках. В JavaScript регулярные выражения являются также объектами.
7. Операторы
JavaScript поддерживает компактный набор операторов, которые могут использоваться для создания интерактивных Web-страниц. Здесь дан обзор этих операторов.
8. Функции
Функции являются другими фундаментальными блоками JavaScript. Функция является процедурой JavaScript – набором операторов, выполняющим специфическую задачу. Чтобы использовать функцию, Вы обязаны сначала определить её; затем скрипт может вызвать эту функцию. Определение функций Вызов функций Использование массива Arguments Предопределённые функции
9. Работа с объектами
Здесь рассматривается использование объектов, свойств, функций и методов и то, как создать Ваши собственные объекты. Объекты и свойства Создание новых объектов Предопределенные объекты ядра
10. Объектная модель. Детали
JavaScript является объектно-ориентированным языком на базе прототипов, а не на базе классов. Из-за этого базового различия, не очевидно то, как JavaScript даёт возможность создавать иерархии объектов и реализовывать наследование свойств и значений. В данной главе делается попытка прояснить это. Языки на базе классов и на базе прототипов Пример Employee Создание иерархии Свойства объекта Более гибкие конструкторы Повторное рассмотрение наследования свойств