Критика первоначального выпуска

OpenSocial, открытый для многих фанфар в новостях, вначале не работал хорошо; он работал только на принадлежащем Google Orkut, и только с ограниченным количеством гаджетов, возвращая ошибки для других гаджетов. Другие сети все еще занимались внедрением этой структуры.

6 декабря TechCrunch представил отчет основателя MediaPops Расса Уитмана, который сказал: «Хотя мы изначально были очень взволнованы, мы на собственном опыте убедились, насколько ограничен выпуск». Расс добавил, что отсутствуют «основные функциональные компоненты» и что «написать один раз, распространить широко» не соответствует действительности.[21]


  Снято с производства  Текущий


OpenSocial was rumored to be part of a larger social networking initiative by Google code-named «Maka-Maka»,[10] which is defined as meaning «intimate friend with whom one is on terms of receiving and giving freely» in Hawaiian.[11]


An open-source project, Shindig, was launched in December 2007, to provide a reference implementation of the OpenSocial standards. It has the support of Google, Ning, and other companies developing OpenSocial-related software.

Apache Rave is a lightweight and open-standards based extensible platform for using, integrating and hosting OpenSocial and W3C Widget related features, technologies and services. It will also provide strong context-aware personalization, collaboration and content integration capabilities and a high quality out-of-the-box installation as well as be easy to integrate in other platforms and solutions.[12]


  1. ^«Google Launches OpenSocial to Spread Social Applications Across the Web – News announcements – News from Google – Google». Retrieved 2021-11-23.
  2. ^ abcMark Marum (2021-01-01). «OpenSocial Specification 1.0.0 Release Notes». GitHub. Retrieved 2021-11-28.
  3. ^«OpenSocial Foundation Moving Standards Work to W3C Social Web Activity». W3C. 2021-12-16. Retrieved 2021-12-17.
  4. ^ ab«OpenSocial Foundation Moves Standards Work to W3C Social Web Activity W3C Blog». W3C. 2021-12-16. Retrieved 2021-12-01.
  5. ^Häsel, Matthias (2021-01-01). «Opensocial: An Enabler for Social Applications on the Web». Commun. ACM. 54 (1): 139–144. doi:10.1145/1866739.1866765. ISSN 0001-0782. S2CID 52805577.
  6. ^«Open Social: a new universe of social applications all over the web». 2007-11-02. Archived from the original on November 2, 2007. Retrieved 2021-11-25.
  7. ^«OpenSocial Foundation». GitHub. Retrieved 2021-11-25.
  8. ^ ab«OpenSocial Specification Release Notes». Archived from the original on 2021-08-11. Retrieved 2021-11-23.
  9. ^Helft, Miguel; Brad Stone (2007-10-31). «Google and Friends to Gang Up on Facebook». The New York Times. Retrieved 2007-10-31.
  10. ^Schonfeld, Erick (2007-10-29). «Google’s Response to Facebook: »Maka-Maka««. TechCrunch. Retrieved 2007-10-31.
  11. ^«maka.maka». Nā Puke Wehewehe ʻŌlelo Hawaiʻi. Ulukau: The Hawaiian Electronic Library. Archived from the original on 2021-09-18. Retrieved 2007-11-01.
  12. ^«Open Social Foundation Moves Standards Work to W3C Social Web Activity». Retrieved 2021-12-02.
  13. ^«What is OpenSocial? A Webopedia Definition». Retrieved 2021-11-23.
  14. ^«Friendster Opens Platform to Developers». PCWorld. 28 October 2007. Retrieved 2021-12-02.
  15. ^««hi5 Taps Widgetbox for OpenSocial Support and Access to the World’s Widest Selection of Widgets.» Science Letter 9 Sept. 2008: 4265. Academic OneFile. Web». Retrieved September 9, 2021.
  16. ^«Let me see my app!». February 5, 2008. Archived from the original on February 9, 2008. Retrieved February 5, 2008.
  17. ^Arrington, Michael (2007-11-05). «OpenSocial Hacked Again». TechCrunch. Retrieved 2007-11-06.
  18. ^Arrington, Michael (2007-11-05). «OpenSocial Hacked Again». TechCrunch. Retrieved 2021-07-24.
  19. ^Häsel, Matthias; Iacono, Luigi Lo (2021-05-31). Decker, Bart De; Schaumüller-Bichl, Ingrid (eds.). Security in OpenSocial-Instrumented Social Networking Services. Lecture Notes in Computer Science. Springer Berlin Heidelberg. pp. 40–52. doi:10.1007/978-3-642-13241-4_5. ISBN 978-3-642-13240-7.
  20. ^Schonfeld, Erick (2007-12-06). «OpenSocial Still »Not Open for Business««. TechCrunch. Retrieved 2021-07-24.
  21. ^ abMark Marum (2021-01-01). «OpenSocial Specification 2.5.1 Release Notes». GitHub. Retrieved 2021-11-28.
  22. ^ abMark Marum (2021-01-01). «OpenSocial Specification 2.5.0 Release Notes». GitHub. Retrieved 2021-11-28.
  23. ^ abMark Marum (2021-01-01). «OpenSocial Specification 2.0.1 Release Notes». GitHub. Retrieved 2021-11-28.
  24. ^ abMark Marum (2021-01-01). «OpenSocial Specification 2.0.0 Release Notes». GitHub. Retrieved 2021-11-28.
  25. ^ abMark Marum (2021-01-01). «OpenSocial Specification 1.1.0 Release Notes». GitHub. Retrieved 2021-11-28.
  26. ^ abMark Marum (2021-01-01). «OpenSocial Specification 0.9.0 Release Notes». GitHub. Retrieved 2021-11-28.
  27. ^ abMark Marum (2021-01-01). «OpenSocial Specification 1.8.1 Release Notes». GitHub. Retrieved 2021-11-28.
  28. ^ abMark Marum (2021-01-01). «OpenSocial Specification 0.8.0 Release Notes». GitHub. Retrieved 2021-11-28.
  29. ^ abMark Marum (2021-01-01). «OpenSocial Specification 0.7.0 Release Notes». GitHub. Retrieved 2021-11-28.
  30. ^ abMark Marum (2021-01-01). «OpenSocial Specification 0.6.0 Release Notes». GitHub. Retrieved 2021-11-28.
  31. ^ abMark Hopkins (2007-11-09). «OpenSocial Container Pre-Release». Mashable. Retrieved 2021-11-28.


Based on HTML and JavaScript, as well as the Google Gadgets framework, OpenSocial includes multiple APIs for social software applications to access data and core functions on participating social networks.[6] Each API addresses a different aspect.[7] It also includes APIs for contacting arbitrary third party services on the web using a proxy system and OAuth for security.

In version 0.9 OpenSocial added support for a tag-based language.[8] This language is referred to as OSML and allows tag-based access to data from the OpenSocial APIs that previously required an asynchronous client-side request.

Starting in version 2.0, OpenSocial adopted support for Activity Streams format.[8]

Version 0.6.0

Security was a large focus in version 0.6.0. Permission controls were tightened to prevent a gadget from returning information if it is not authorized to do so. New classes were added, such as the Environment class to allow a gadget to respond differently according to its environment and the Surface class to support navigation from one surface to another.

Version 0.8.0

OpenSocial changed specifications for containers to implement a RESTful API. Many of the OpenSocial Javascript API changes made this version incompatible with previous versions. Existing gadgets continued to use v0.7.0. After updating the gadget, it would use v0.8.0.

Гаджет:  Гарантия

Version 0.8.1

This minor release placed a major focus on server-to-server protocols as «the Person schema has been aligned with the Portable Contacts effort, and an optional RPC proposal has been added.»[27]JSON-RPC protocol was added to increase server to server functionality.

Version 0.9.0

In response to feedback and observation of how developers were using the API, this version focused on making «application development, testing, and deployment easier and faster, while reducing the learning curve for new app developers.»[26] The OpenSocial Javascript API was streamlined to make it lightweight while retaining the power of the old Javascript API.

Proxied content was introduced to eliminate the need for developers to work around previous AJAX limitations. Proxied content allows a content to be fetched from a URL and displayed in a <Content> tag. In response to a common use of sending data to a remote server immediately after a request, OpenSocial 0.9.

0 introduced data pipelining. Data pipelining allows the developer to specify the social data the application will need and make the data immediately available. OpenSocial Templates were introduced to create data-driven UI with a separation of markup and programmatic logic.

Version 1.0.0

OpenSocial acknowledged that the «one-size-fits-all» approach it was taking was not going to work for the diverse type of websites that had adopted the platform. To address this issue, OpenSocial modularized into four compliance modules: Core API Server, Core Gadget Server, Social API Server, and Social Gadget Server.[2] This allowed a developer to pick and choose the modules they wanted to use while using other services that aren’t part of OpenSocial. Extensions were introduced to allow developers to extend OpenSocial containers.

Version 1.1.0

In response to enterprise environment needs, OpenSocial added support for advanced mashup scenarios. It enabled gadgets to «securely message each other in a loosely coupled manner.»[25] This new feature was called Inter-Gadget Communication.

Version 2.0.0

OpenSocial introduced support for Activity Streams. JSON had emerged as the preferred data format and support for ATOM was deprecated. The Gadget format was simplified to give the ability to define a template library within a Gadget specification.[24] While not finalized, the groundwork for OAuth 2.0 support was put in place.

Version 2.5.0

Common Containers were added that provided «a set of common services that Container developers can leverage for features like in-browser Gadget lifecycle event callbacks, Embedded Experiences, selection handlers, and action handlers.»[22] A new Metadata API gives OpenSocial applications the ability to adapt to the capabilities of different OpenSocial containers. The WAP authentication extension was deprecated.

Version 2.5.1

Changes to the REST API were made to address several issues that required changes in the OpenSocial specifications so it could be used by the Open Mobile Alliance.[21]

Версия 0.5.0

Google объявила о запуске OpenSocial с предварительным выпуском версии 0.5.0. Хотя этот API нестабилен, он представил «различные DTD XML, интерфейсы Javascript и другие структуры данных».[32] на платформу OpenSocial.

Версия 0.6.0

В версии 0.6.0 большое внимание уделялось безопасности. Контроль разрешений был ужесточен, чтобы гаджет не мог возвращать информацию, если он не авторизован на это. Были добавлены новые классы, такие как класс Environment, позволяющий гаджету реагировать по-разному в зависимости от его среды, и класс Surface для поддержки навигации с одной поверхности на другую.

Версия 0.7.0

Выпущен как «первая итерация, которая может полностью поддерживать многофункциональные социальные приложения».[30] Он добавил несколько стандартных полей для информации профиля, возможность отправлять сообщение для установки приложения, шаблон Activity для управления уведомлениями о действиях пользователей о том, что делают пользователи, и упрощенный API сохраняемости для использования каналов вместо глобального приложения с привязкой к экземпляру. данные.

Еще одно важное объявление пришло от Апач Шиндиг. Apache Shindig создал гаджеты с открытым кодом. В координации с этим объявлением OpenSocial 0.7.0 представил спецификации гаджетов, чтобы разработчики могли определять свои гаджеты с помощью API гаджетов.

Версия 0.8.0

OpenSocial изменил спецификации контейнеров для реализации RESTful API. Многие изменения API OpenSocial Javascript сделали эту версию несовместимой с предыдущими версиями. Существующие гаджеты продолжали использовать v0.7.0. После обновления гаджета будет использоваться версия 0.8.0.

Версия 0.8.1

В этом второстепенном выпуске основное внимание уделялось протоколам межсерверного взаимодействия, поскольку «схема Person была согласована с усилиями по переносимым контактам, и было добавлено дополнительное предложение RPC».[28]JSON-RPC протокол был добавлен для увеличения функциональности сервера к серверу.

Версия 0.9.0

В ответ на отзывы и наблюдения за тем, как разработчики использовали API, эта версия была сосредоточена на том, чтобы «упростить и ускорить разработку, тестирование и развертывание приложений, уменьшив при этом кривую обучения для новых разработчиков приложений».[27] API OpenSocial Javascript был оптимизирован, чтобы сделать его легким, сохранив при этом возможности старого API Javascript.

Гаджет:  Как установить виджет на телефон - ТопНомер.ру

Прокси-контент был введен, чтобы избавить разработчиков от необходимости обходить предыдущие ограничения AJAX. Прокси-контент позволяет извлекать контент из URL-адреса и отображать его в теге . В ответ на обычное использование отправки данных на удаленный сервер сразу после запроса, OpenSocial 0.9.

0 ввел конвейерную обработку данных. Конвейерная обработка данных позволяет разработчику указать социальные данные, которые потребуются приложению, и немедленно сделать эти данные доступными. Шаблоны OpenSocial были введены для создания пользовательского интерфейса, управляемого данными, с разделением разметки и программной логики.

Язык разметки OpenSocial (OSML Markup) — это новый набор стандартизованных тегов для выполнения общих задач или безопасного выполнения обычно небезопасных операций в шаблонах. OSML является расширяемым. Разработчики могут создать библиотеку своих собственных тегов.

Версия 1.0.0

OpenSocial признал, что применяемый им подход «один размер для всех» не годится для разнообразных типов веб-сайтов, которые приняли эту платформу. Для решения этой проблемы OpenSocial разбита на четыре модуля соответствия: Core API Server, Core Gadget Server, Social API Server и Social Gadget Server.[3] Это позволяло разработчику выбирать модули, которые он хотел использовать при использовании других сервисов, не являющихся частью OpenSocial. Были введены расширения, позволяющие разработчикам расширять контейнеры OpenSocial.

Версия 1.1.0

В ответ на потребности корпоративной среды OpenSocial добавил поддержку расширенных сценариев гибридных приложений. Это позволило гаджетам «безопасно обмениваться сообщениями в слабосвязанной манере».[26] Эта новая функция получила название «Связь между гаджетами».

Версия 2.0.0

OpenSocial представил поддержку Ленты активности. JSON стал предпочтительным форматом данных и поддерживает АТОМ устарела. Формат гаджета был упрощен, чтобы дать возможность определять библиотеку шаблонов в спецификации гаджета.[25] Хотя это и не доработано, фундамент для поддержки OAuth 2.0 был заложен.

Версия 2.0.1

В этой версии OpenSocial была завершена поддержка OAuth 2.0.[24]

Версия 2.5.0

Были добавлены общие контейнеры, которые предоставили «набор общих служб, которые разработчики контейнеров могут использовать для таких функций, как обратные вызовы событий жизненного цикла гаджетов в браузере, встроенные возможности, обработчики выбора и обработчики действий».[23] Новый API метаданных дает приложениям OpenSocial возможность адаптироваться к возможностям различных контейнеров OpenSocial. В WAP расширение аутентификации устарело.

Версия 2.5.1

Изменения в REST API были внесены для решения нескольких проблем, которые потребовали изменений в спецификациях OpenSocial, чтобы его могли использовать Открытый мобильный альянс.[22]


An Открытый исходный код проект, Shindig, был запущен в декабре 2007 года, чтобы обеспечить эталонная реализация стандартов OpenSocial. Его поддерживают Google, Ning и другие компании, разрабатывающие программное обеспечение, связанное с OpenSocial.

Apache Rave — это легкая расширяемая платформа на основе открытых стандартов для использования, интеграции и размещения функций, технологий и услуг, связанных с OpenSocial и W3C Widget. Он также обеспечит мощную контекстно-зависимую персонализацию, возможности совместной работы и интеграции контента, а также высококачественную готовую установку, а также его будет легко интегрировать в другие платформы и решения.[13]

И Shindig, и Apache Rave больше не находятся в разработке и были изъяты из обращения фондом Apache.


привет5 краны Виджетбоксподдержка OpenSocial для получения доступа к непревзойденному выбору веб-виджетов, которые предоставляет Widgetbox.[16]

Проблемы с безопасностью

Первоначальная поддержка OpenSocial обнаружила уязвимости в безопасности, и разработчик-любитель, описавший себя, продемонстрировал подвиги из RockYou гаджет на Plaxo, и из Нин социальные сети, использующие мне нравится гаджет.[18] Как сообщает TechCrunch 5 ноября 2007 года OpenSocial был быстро взломан.

Общее время взлома iLike on Ning на основе OpenSocial составило всего 20 минут, при этом злоумышленник имел возможность добавлять и удалять песни в плейлисте пользователя и получать доступ к информации о друзьях пользователя.[19]

Hasel и Iacono показали, что «спецификации OpenSocial далеко не исчерпывающие в отношении безопасности».[20] Они обсудили различные последствия для безопасности в контексте OpenSocial. Они представили возможные уязвимости в целостности сообщений и аутентификации, конфиденциальности сообщений и управлении идентификацией и контролем доступа.


По слухам, OpenSocial является частью более крупной инициативы Google в области социальных сетей под кодовым названием «Maka-Maka»,[11] что определяется как означающее «близкий друг, с которым мы можем свободно получать и отдавать» в Гавайский.[12]


  1. ^«Socialwg — W3C Wiki».
  2. ^«Google запускает OpenSocial для распространения социальных приложений в Интернете — Новости новостей — Новости Google — Google». Получено 2021-11-23.
  3. ^ абcМарк Марум (01.01.2021). «Примечания к выпуску спецификации OpenSocial 1.0.0». GitHub. Получено 2021-11-28.
  4. ^«OpenSocial Foundation переносит работу со стандартами в деятельность W3C в социальных сетях». W3C. 2021-12-16. Получено 2021-12-17.
  5. ^ аб«OpenSocial Foundation переносит работу со стандартами в блог W3C об активности в социальной сети W3C». W3C. 2021-12-16. Получено 2021-12-01.
  6. ^Хезель, Маттиас (01.01.2021). «Opensocial: инструмент для социальных приложений в Интернете». Commun. ACM. 54 (1): 139–144. Дои:10.1145/1866739.1866765. ISSN 0001-0782.
  7. ^«Open Social: новая вселенная социальных приложений в Интернете». 2007-11-02. Архивировано из оригинал 2 ноября 2007 г.. Получено 2021-11-25.
  8. ^«Фонд OpenSocial». GitHub. Получено 2021-11-25.
  9. ^ аб«Примечания к выпуску спецификации OpenSocial». Архивировано из оригинал на 2021-08-11. Получено 2021-11-23.
  10. ^Хелфт, Мигель; Брэд Стоун (31 октября 2007 г.). «Google и друзья объединяются в Facebook». Нью-Йорк Таймс. Компания New York Times. Получено 2007-10-31.
  11. ^Шонфельд, Эрик (2007-10-29). «Ответ Google на Facebook:» Мака-Мака««. TechCrunch. Получено 2007-10-31.
  12. ^«мака.мака». Nā Puke Wehewehe ʻlelo Hawaiʻi. Улукау: Гавайская электронная библиотека. Архивировано из оригинал на 2021-09-18. Получено 2007-11-01.
  13. ^«Открытый социальный фонд переносит работу со стандартами в деятельность W3C в социальных сетях». Получено 2021-12-02.
  14. ^«Что такое OpenSocial? Определение в Webopedia». Получено 2021-11-23.
  15. ^«Friendster открывает платформу для разработчиков». PCWorld. 28 октября 2007 г.. Получено 2021-12-02.
  16. ^««hi5 Taps Widgetbox для поддержки OpenSocial и доступа к самому широкому в мире набору виджетов. «Science Letter от 9 сентября 2008 г .: 4265. Academic OneFile. Web». Получено 9 сентября, 2021.
  17. ^«Дай мне посмотреть мое приложение!». 5 февраля 2008 г. Архивировано с оригинал 9 февраля 2008 г.. Получено 5 февраля, 2008.
  18. ^Аррингтон, Майкл (2007-11-05). «OpenSocial снова взломан». TechCrunch. Получено 2007-11-06.
  19. ^Аррингтон, Майкл (2007-11-05). «OpenSocial снова взломан». TechCrunch. Получено 2021-07-24.
  20. ^Хезель, Матиас; Яконо, Луиджи Ло (31.05.2021). Декер, Барт Де; Шаумюллер-Бихль, Ингрид (ред.). Безопасность в социальных сетях с инструментами OpenSocial. Конспект лекций по информатике. Springer Berlin Heidelberg. С. 40–52. Дои:10.1007/978-3-642-13241-4_5. ISBN 978-3-642-13240-7.
  21. ^Шонфельд, Эрик (2007-12-06). OpenSocial еще не открыт для бизнеса««. TechCrunch. Получено 2021-07-24.
  22. ^ абМарк Марум (01.01.2021). «Примечания к выпуску спецификации OpenSocial 2.5.1». GitHub. Получено 2021-11-28.
  23. ^ абМарк Марум (01.01.2021). «Примечания к выпуску спецификации OpenSocial 2.5.0». GitHub. Получено 2021-11-28.
  24. ^ абМарк Марум (01.01.2021). «Примечания к выпуску спецификации OpenSocial 2.0.1». GitHub. Получено 2021-11-28.
  25. ^ абМарк Марум (01.01.2021). «Примечания к выпуску спецификации OpenSocial 2.0.0». GitHub. Получено 2021-11-28.
  26. ^ абМарк Марум (01.01.2021). «Примечания к выпуску спецификации OpenSocial 1.1.0». GitHub. Получено 2021-11-28.
  27. ^ абМарк Марум (01.01.2021). «Примечания к выпуску спецификации OpenSocial 0.9.0». GitHub. Получено 2021-11-28.
  28. ^ абМарк Марум (01.01.2021). «Примечания к выпуску спецификации OpenSocial 1.8.1». GitHub. Получено 2021-11-28.
  29. ^ абМарк Марум (01.01.2021). «Примечания к выпуску спецификации OpenSocial 0.8.0». GitHub. Получено 2021-11-28.
  30. ^ абМарк Марум (01.01.2021). «Примечания к выпуску спецификации OpenSocial 0.7.0». GitHub. Получено 2021-11-28.
  31. ^ абМарк Марум (01.01.2021). «Примечания к выпуску спецификации OpenSocial 0.6.0». GitHub. Получено 2021-11-28.
  32. ^ абМарк Хопкинс (2007-11-09). «Предварительная версия контейнера OpenSocial». Mashable. Получено 2021-11-28.


OpenSocial, основанный на HTML и JavaScript , а также на платформе Google Gadgets , включает несколько API-интерфейсов для приложений социального программного обеспечения для доступа к данным и основным функциям в участвующих социальных сетях .

В версии 0.9 OpenSocial добавлена ​​поддержка языка на основе тегов . Этот язык называется OSML и обеспечивает доступ на основе тегов к данным из API OpenSocial, которые ранее требовали асинхронного запроса на стороне клиента. Он также определил богатую систему шаблонов тегов и принял язык выражений, в значительной степени основанный на языке выражений Java .

Начиная с версии 2.0, OpenSocial поддерживает формат Activity Streams .


Friendster развернул API версии 0.7 спецификации OpenSocial, что упростило запуск существующих приложений OpenSocial, использующих версию 0.7, на Friendster и охват более 75 миллионов пользователей Friendster. Friendster также планирует поддерживать дополнительные API OpenSocial в ближайшие месяцы, включая новые API версии 0.8.[15]

Criticism of initial release

Opened to much fanfare in news coverage, OpenSocial did not work well in the beginning; it only ran on Google-owned Orkut, and only with a limited number of gadgets, returning errors for other gadgets. Other networks were still looking into implementing the framework.

On December 6, TechCrunch followed up with a report by MediaPops founder Russ Whitman, who said «While we were initially very excited, we have learned the hard way just how limited the release truly is.» Russ added that «core functionality components» are missing and that «write once, distribute broadly» was not accurate.[20]


  Discontinued  Current

VersionRelease dateRelease notes
2.5.1[21]August 30, 2021 (2021-08-30)View Release Notes
2.5.0[22]August 28, 2021 (2021-08-28)View Release Notes
2.0.1[23]November 23, 2021 (2021-11-23)View Release Notes
2.0.0[24]August 18, 2021 (2021-08-18)View Release Notes
1.1.0[25]November 18, 2021 (2021-11-18)View Release Notes
1.0.0[2]March 9, 2021 (2021-03-09)View Release Notes
0.9.0[26]April 15, 2009 (2009-04-15)View Release Notes
0.8.1[27]September 25, 2008 (2008-09-25)View Release Notes
0.8.0[28]May 27, 2008 (2008-05-27)View Release Notes
0.7.0[29]January 25, 2008 (2008-01-25)View Release Notes
0.6.0[30]December 21, 2007 (2007-12-21)View Release Notes
0.5.0[31]November 9, 2007 (2007-11-09)View Release Notes
Оцените статью
Добавить комментарий