7. 1. Использовать ApiKey для
взаимодействия с сервисом,
2. Социальная авторизация
(Facebook, Twitter, использовать
access_token для получения
ApiKey)
3. Tastypie лимиты, кастомные
схемы для гибких прав доступа
Безопасность и API
8. Социальная авторизация
Для авторизации через мобильные
клиенты
● можно использовать
access_token, полученный
при авторизации,
● затем access_token
использовать для получения
ApiKey для последующего
взаимодействия с сервисом,
● можно выполнить
стандартный логин через
форму и возвращать ApiKey
9. Использование лимитов в Tastypie
Лимиты позволяют создавать гибкую
систему прав доступа к API
10. REST API на клиенте. Зачем?
● Тесная интеграция с ОС
● Можно работать в
бэкграунде
● Быстрей, чем мобильный
сайт
● User Experience
● Пользователи всегда
предпочитают приложение
сайту
11. Частые проблемы
● Кажущаяся простота
● Ограниченные ресурсы
устройств
● Хранение результата в памяти
○ Большой расход памяти
○ Расход сетевого трафика
● Выполнение запросов в
основном потоке
● Выбор формата данных (JSON,
XML, binary)
12. Common workflow
REST request
● Подготовка HTTP запроса
● Выполнение HTTP запроса
● Обработка HTTP ответа
Производительность
● Формат данных: binary, JSON, XML
● GZIP
Отслеживать состояние запроса
13. iOS. Основные фреймворки
●
○ Легкая и быстрая
○ Хорошая модульная структура
○ Построена поверх NSOperation
●
○ Построена поверх AFNetworking
○ Интеграция с CoreData
○ Object Mapping
○ CoreData Seeding
14. Android.
Основные фреймворки
● Android Asynchronous Http
Client
○ Легкая и простая
○ Автоматическое конвертироваие
ответа в JSON объект
● Volley
○ Легкая быстрая, новая
○ Используется Google во всех
своих приложениях
○ Умеет отменять запросы
● GSON