Совместимость OData с .NET, Java, PHP, iPhone
На MIX10 был анонсирован протокол обмена данными Open Data Protocol (OData), а на сайте http://odata.org уже доступны SDK для PHP, Java, Objective-C (iPhone & Mac,) и JavaScript (AJAX и Palm WebOS).
OData SDKs for PHP, Java, Objective C (iPhone & Mac,) и JavaScript (AJAX и Palm WebOS)Новая версия OData SDK for PHP (ранее она называлась Toolkit for PHP with ADO.NET/WCF Data Services) позволяет работать с большими наборами данных, содержит механизм автоматической разбивки страниц и новый пример на базе каталога Netflix.
Также доступен SDK для Objective-C, что позволяет использовать OData в приложениях для Mac и iPhone. Пример использования SDK - iPhone приложение для отображения данных сервиса NetFlix, который хостится в Azure хранилище.
Детальнее о OData SDK для Objective-C
Noelios обновила Restlet Extension для OData – набор инструментов и библиотек для Java. Для более детального изучения рекомендуется статья Restlet supports OData, the Open Data Protocol и детальное руководство по использованию.
Все SDK доступны на специальной странице - http://www.odata.org/developers/odata-sdk.
Библиотека | Скачать | Документация | Статьи |
OData Javascript Library |
Download | ||
OData SDK for PHP |
|||
Restlet extension for OData (Java) |
|||
ruby_odata: OData client library for ruby. | Download | Documentation | |
OData Client Library for Windows Phone 7 series |
Coming soon |
||
OData client for Objective-C |
Download |
User Guide included in the download |
|
Microsoft .NET Framework 3.5 Service Pack 1 |
|||
Data Services update for Microsoft .NET Framework 3.5 Service Pack 1 |
Download |
||
Microsoft .NET Framework 4.0 |
|||
Silverlight 4 |
Назначение протокола OData - публикация данные в вебе с дополнительными возможностями управления данными и позволяет тесно интегрировать данные между клиентами, серверами, сервисами и инструментами.
Детальнее:
Netflix - демо-приложениеДемо-приложение потребляет OData поток, с помощью Silverlight отображает данные на экране. Кроме того, эти же данные используются для отображения на Palm webOS с помощью библиотеки OData JavaScript. Пример разработан с помощью OData SDK для PHP.
На стартовой странице отображается поисковая форма с разными меню для поиска в каталоге (для простоты используется только Genre, Language и Title):
Когда пользователь задал критерии поиска и нажал кнопку поиска, PHP-приложение вызывает поток Netflix OData с помощью простого запроса:
Список фильтруется и сортируется на стороне сервера, задача клиента - отобразить полученный список:
Netflix’s OData backend работает на Windows Azure и SQL Azure для публикации OData потоков. Есть несколько вариантов построения поставщика данных:
- SharePoint 2010
- SQL Azure
- Windows Azure Table Storage
- IBM Websphere
Список всех доступных решений можно посмотреть здесь: http://www.odata.org/producers.
Как было реализовано демо приложение?Вы можете посмотреть видео на Channel9, в котором детально описано как демо-приложение было реализовано.
Использование oData SDK для PHP для отображения OData фидов - достаточно простое и быстрое занятие.
Важными являются следующие шаги:
1. Генерация прокси классов: SDK включает инструмент, который на основании OData фида генерирует соответствующие PHP классы. Он создаст один класс для каждой коллекции, доступной через сервис. Ниже показан список коллекций, доступных через сервис Netflix:
2. Следующим этапом является написание бизнес-логики приложения с помощью сгенерированных PHP классов.
Ниже показана диаграмма, на которой показаны основные этапы работы с сервисами OData:
Процесс мало зависит от выбранной технологии, будь то PHP, Java, Objective-C (iPhone & Mac) или JavaScript (AJAX и Palm WebOS).
Другие материалы:
Компании из статьи
Microsoft Украина | Украинское подразделение компании Microsoft. |