OpenSocial
Эта статья содержит контент, написанный как реклама . ( Октябрь 2019 г. ) |
Первоначальный выпуск | 1 ноября 2007 г |
---|---|
Стабильная версия | 2.5.1
/ 30 августа 2013 г. |
Написано в | Java , PHP , C# , JavaScript , HTML |
Тип | Фреймворк веб-приложений |
Лицензия | Лицензия Апач 2.0 |
Веб-сайт | открытый социальный |
OpenSocial — это общедоступная спецификация, в которой описывается набор общих интерфейсов прикладного программирования (API) для веб-приложений . Первоначально разработанный для приложений социальных сетей , он был разработан совместно Google , MySpace и другими социальными сетями. С тех пор она превратилась в среду выполнения , которая позволяет сторонним компонентам, независимо от их уровня доверия, работать внутри существующего веб-приложения.
OpenSocial Foundation интегрировал или поддержал различные Open Web технологии , включая OAuth и OAuth 2.0 , потоки активности и переносимые контакты . С момента своего создания 1 ноября 2007 г. [ 1 ] приложения, реализующие API OpenSocial, могут взаимодействовать с любой системой социальных сетей, которая их поддерживает.
OpenSocial изначально принял универсальный подход к разработке. По мере развития платформы и расширения базы пользователей она была модульной, что позволило разработчикам включать только необходимые компоненты платформы. [ 2 ] Orkut , клиент Google, первым поддержал OpenSocial. [ 3 ]
16 декабря 2014 года Консорциум Всемирной паутины (W3C) объявил, что OpenSocial Foundation переведет свою работу по стандартизации на W3C Social Web Activity. [ 4 ] Это эффективно интегрировало OpenSocial в рабочую группу W3C по социальным сетям и группу социальных интересов, тем самым растворив OpenSocial как отдельную организацию.
Структура
[ редактировать ]В версии 0.9 OpenSocial включила поддержку языка на основе тегов . [ 6 ] известный как ОСМЛ. Этот язык облегчает доступ на основе тегов к данным из API OpenSocial , что ранее требовало асинхронного запроса на стороне клиента. Кроме того, была создана комплексная система шаблонов тегов и принят язык выражений, основанный на Java языке выражений .
Начиная с версии 2.0, OpenSocial начал поддерживать формат потоков активности . [ 6 ]
История
[ редактировать ]Фон
[ редактировать ]OpenSocial обычно описывается как более открытая кроссплатформенная альтернатива платформе Facebook , собственной службе популярной социальной сети Facebook . [ 7 ]
Разработка
[ редактировать ]Ходили слухи, что OpenSocial является частью более крупной социальной сети Google под кодовым названием «Мака-Мака». [ 8 ] [ 9 ] означает «близкий друг, с которым можно свободно получать и отдавать» что на гавайском языке . [ 10 ]
Выполнение
[ редактировать ]Проект открытым исходным кодом Shindig с был запущен в декабре 2007 года для обеспечения эталонной реализации стандартов OpenSocial. Он пользуется поддержкой Google, Ning и других компаний, разрабатывающих программное обеспечение, связанное с OpenSocial. Синтаксический анализатор Myspace OpenSocial был выпущен как проект Negroni в январе 2011 года и представляет собой C# реализацию OpenSocial на основе .
Apache Rave — это легкая расширяемая платформа на основе открытых стандартов для использования, интеграции и размещения технологий и сервисов, связанных с OpenSocial и W3C Widget. Он также обеспечит широкие возможности контекстно-зависимой персонализации, совместной работы и интеграции контента, а также высококачественную готовую установку, а также будет легко интегрироваться в другие платформы и решения. [ 11 ]
И Shindig, и Apache Rave больше не находятся в разработке и сняты с производства Apache Foundation.
Использование
[ редактировать ]Корпоративные веб-сайты, такие как Friendster , hi5 , LinkedIn , MySpace , Orkut и Salesforce.com , являются основными пользователями OpenSocial. [ 12 ]
Френдстер
[ редактировать ]Friendster внедрил API-интерфейсы версии 0.7 спецификации OpenSocial, что упрощает запуск существующих приложений OpenSocial, использующих версию 0.7, на Friendster и охват более 75 миллионов пользователей Friendster. Friendster также планирует в ближайшие месяцы поддерживать дополнительные API OpenSocial, включая новые API 0.8. [ 13 ]
привет5
[ редактировать ]hi5 использует поддержку Widgetbox для OpenSocial, чтобы получить доступ к выбору веб-виджетов, предоставляемых Widgetbox. [ 14 ]
MySpace
[ редактировать ]Платформа разработчиков Myspace (MDP) основана на API OpenSocial. Он поддерживает социальные сети для разработки социальных и интерактивных виджетов. Это можно рассматривать как ответ платформе разработчиков Facebook. [ 15 ]
Проблемы безопасности
[ редактировать ]Первоначальная поддержка OpenSocial обнаружила уязвимости в безопасности: разработчик-любитель, по его словам, демонстрировал эксплойты гаджета RockYou на Plaxo , а Ning социальные сети использовали гаджет iLike . [ 16 ] Как сообщил TechCrunch 5 ноября 2007 г., OpenSocial был быстро взломан. Общее время взлома iLike на Ning на основе OpenSocial составило 20 минут, при этом злоумышленник смог добавлять и удалять песни в плейлисте пользователя, а также получать доступ к информации о друзьях пользователя. [ 17 ]
Хезель и Яконо показали, что «спецификации OpenSocial были далеки от всеобъемлющих в отношении безопасности». [ 18 ] Они обсудили различные последствия безопасности в контексте OpenSocial. Они представили возможные уязвимости в системах целостности и аутентификации сообщений, конфиденциальности сообщений, а также управления идентификацией и контроля доступа.
Версии выпуска
[ редактировать ]Критика первого выпуска
[ редактировать ]Несмотря на первоначальную помпезность и освещение в новостях, OpenSocial поначалу столкнулся со многими проблемами; он работал только на принадлежащем Google Orkut и только на ограниченном количестве устройств, при этом на других устройствах сообщалось о множественных ошибках. Другие сети все еще рассматривают возможность внедрения этой структуры.
6 декабря TechCrunch опубликовал отчет основателя MediaPops Расса Уитмена, который сказал: «Хотя [они] поначалу были очень взволнованы, [они] на собственном горьком опыте поняли, насколько на самом деле ограничен релиз». Расс добавил, что «основные функциональные компоненты» отсутствуют и что фраза «напиши один раз, распространяй широко» не соответствует действительности. [ 19 ]
Легенда: Снято с производства Текущий
Версия | Дата выпуска | Примечания к выпуску |
---|---|---|
2.5.1 [ 20 ] | 30 августа 2013 г. | Посмотреть примечания к выпуску |
2.5.0 [ 21 ] | 28 августа 2012 г. | Посмотреть примечания к выпуску |
2.0.1 [ 22 ] | 23 ноября 2011 г. | Посмотреть примечания к выпуску |
2.0.0 [ 23 ] | 18 августа 2011 г. | Посмотреть примечания к выпуску |
1.1.0 [ 24 ] | 18 ноября 2010 г. | Посмотреть примечания к выпуску |
1.0.0 [ 2 ] | 9 марта 2010 г. | Посмотреть примечания к выпуску |
0.9.0 [ 25 ] | 15 апреля 2009 г. | Посмотреть примечания к выпуску |
0.8.1 [ 26 ] | 25 сентября 2008 г. | Посмотреть примечания к выпуску |
0.8.0 [ 27 ] | 27 мая 2008 г. | Посмотреть примечания к выпуску |
0.7.0 [ 28 ] | 25 января 2008 г. | Посмотреть примечания к выпуску |
0.6.0 [ 29 ] | 21 декабря 2007 г. | Посмотреть примечания к выпуску |
0.5.0 [ 30 ] | 9 ноября 2007 г. | Посмотреть примечания к выпуску |
Версия 2.5.1
[ редактировать ]Изменения в REST API были внесены для решения нескольких проблем, которые потребовали внесения изменений в спецификации OpenSocial, чтобы Open Mobile Alliance мог их использовать. [ 20 ]
Версия 2.5.0
[ редактировать ]Были добавлены общие контейнеры, предоставляющие «набор общих сервисов, которые разработчики контейнеров могут использовать для таких функций, как обратные вызовы событий жизненного цикла гаджетов в браузере, встроенные возможности, обработчики выбора и обработчики действий». [ 21 ] Новый API метаданных дает приложениям OpenSocial возможность адаптироваться к возможностям различных контейнеров OpenSocial. Расширение аутентификации WAP устарело.
Версия 2.0.1
[ редактировать ]Поддержка OAuth 2.0 была завершена в этой версии OpenSocial. [ 22 ]
Версия 2.0.0
[ редактировать ]OpenSocial представила поддержку потоков активности . JSON стал предпочтительным форматом данных, а поддержка ATOM была прекращена. Формат гаджета был упрощен, чтобы дать возможность определить библиотеку шаблонов в спецификации гаджета. [ 23 ] Хотя это и не было доработано, основа для поддержки OAuth 2.0 была заложена.
Версия 1.1.0
[ редактировать ]В ответ на потребности корпоративной среды OpenSocial добавила поддержку расширенных сценариев коллажей. Это позволило гаджетам «безопасно отправлять друг другу сообщения в слабосвязанной форме». [ 24 ] Эта новая функция получила название Inter-Gadget Communication.
Версия 1.0.0
[ редактировать ]OpenSocial признала, что выбранный ею подход «один размер подходит всем» не будет работать для различных типов веб-сайтов, принявших эту платформу. Для решения этой проблемы OpenSocial разделен на четыре модуля соответствия: Core API Server, Core Gadget Server, Social API Server и Social Gadget Server. [ 2 ] Это позволило разработчику выбирать модули, которые он хотел использовать при использовании других сервисов, не являющихся частью OpenSocial. Расширения были введены, чтобы позволить разработчикам расширять контейнеры OpenSocial.
Версия 0.9.0
[ редактировать ]В ответ на отзывы и наблюдения за тем, как разработчики используют API, эта версия была сосредоточена на том, чтобы сделать «разработку, тестирование и развертывание приложений проще и быстрее, одновременно сокращая время обучения для новых разработчиков приложений». [ 25 ] API OpenSocial Javascript был оптимизирован, чтобы сделать его облегченным, сохранив при этом мощь старого API Javascript. Прокси-контент был введен для того, чтобы разработчикам не приходилось обходить предыдущие ограничения AJAX . Прокси-контент позволяет извлекать контент из URL-адреса и отображать его в теге <Content>. В ответ на распространенное использование отправки данных на удаленный сервер сразу после запроса в OpenSocial 0.9.0 была введена конвейерная обработка данных. Конвейерная обработка данных позволяет разработчику указать социальные данные, которые потребуются приложению, и немедленно сделать эти данные доступными. Шаблоны OpenSocial были представлены для создания пользовательского интерфейса, управляемого данными, с разделением разметки и программной логики. Язык разметки OpenSocial (OSML Markup) — это новый набор стандартизированных тегов для выполнения общих задач или безопасного выполнения обычно небезопасных операций внутри шаблонов. OSML расширяем. Разработчики могут создать библиотеку своих пользовательских тегов.
Версия 0.8.1
[ редактировать ]В этом второстепенном выпуске основное внимание уделялось межсерверным протоколам, поскольку «схема Person была согласована с проектом Portable Contacts, и было добавлено дополнительное предложение RPC». [ 26 ] Протокол JSON-RPC был добавлен для расширения функциональности между серверами. Протокол RESTful, представленный в версии 0.8.0, подвергся серьезной переработке: было добавлено, изменено и удалено несколько полей.
Версия 0.8.0
[ редактировать ]OpenSocial изменила спецификации контейнеров для реализации RESTful API . Многие изменения API OpenSocial Javascript сделали эту версию несовместимой с предыдущими версиями. Существующие гаджеты продолжали использовать версию 0.7.0. После обновления гаджет будет использовать версию 0.8.0. Безопасность улучшилась благодаря внедрению авторизации OAuth и очистки HTML , а также событий жизненного цикла контейнера. [ 27 ] Данные персистентности хранились в формате JSON .
Версия 0.7.0
[ редактировать ]Выпущен как «первая версия, которая может полностью поддерживать многофункциональные социальные приложения». [ 28 ] Он добавил несколько стандартных полей для информации профиля, возможность отправить сообщение для установки приложения, шаблон активности для управления уведомлениями об активности о том, что делают пользователи, а также упрощенный API персистентности для использования каналов вместо глобального приложения и приложения на уровне экземпляра. данные. Еще одно важное объявление поступило от Apache Shindig . Гаджеты производства Apache Shindig имеют открытый исходный код. В связи с этим объявлением в OpenSocial 0.7.0 представлены спецификации гаджетов, позволяющие разработчикам определять свои гаджеты с помощью API гаджетов.
Версия 0.6.0
[ редактировать ]В версии 0.6.0 большое внимание уделялось безопасности. Контроль разрешений был ужесточен, чтобы гаджет не возвращал информацию, если у него нет на это полномочий. Были добавлены новые классы, такие как класс Environment, позволяющий гаджету реагировать по-разному в зависимости от окружающей среды, и класс Surface для поддержки навигации с одной поверхности на другую. Класс Activity был упрощен в соответствии с потребностями разработчиков, а класс Stream устарел. [ 29 ]
Версия 0.5.0
[ редактировать ]Google объявила о запуске OpenSocial с предварительной версией версии 0.5.0. Несмотря на нестабильность, этот API представил «различные XML DTD, интерфейсы Javascript и другие структуры данных». [ 30 ] на платформу OpenSocial.
Ссылки
[ редактировать ]- ^ «Google запускает OpenSocial для распространения социальных приложений в сети – Анонсы новостей – Новости от Google – Google» . googlepress.blogspot.com . Проверено 23 ноября 2015 г.
- ^ Jump up to: а б с Марк Марум (1 января 2013 г.). «Примечания к выпуску спецификации OpenSocial 1.0.0» . Гитхаб . Проверено 28 ноября 2015 г.
- ^ «OpenSocial открывает новую банку с червями» . CNET . Проверено 8 ноября 2023 г.
- ^ «OpenSocial Foundation переносит стандарты в социальную веб-активность W3C» . W3C . 16 декабря 2014 года . Проверено 17 декабря 2014 г.
- ^ Хезель, Матиас (1 января 2011 г.). «Opensocial: инструмент для социальных приложений в Интернете». Коммун. АКМ . 54 (1): 139–144. дои : 10.1145/1866739.1866765 . ISSN 0001-0782 . S2CID 52805577 .
- ^ Jump up to: а б «Примечания к выпуску спецификации OpenSocial» . opensocial-resources.googlecode.com . Архивировано из оригинала 11 августа 2011 года . Проверено 23 ноября 2015 г.
- ^ Хелфт, Мигель; Брэд Стоун (31 октября 2007 г.). «Google и друзья объединяются на Facebook» . Нью-Йорк Таймс . Проверено 31 октября 2007 г.
- ^ Шонфельд, Эрик (29 октября 2007 г.). «Ответ Google Facebook: «Мака-Мака» » . ТехКранч . Проверено 31 октября 2007 г.
- ^ Слоан, Джули. «Превратит ли Google «Мака-Мака» Интернет в социальную сеть?» . Проводной . ISSN 1059-1028 . Проверено 20 мая 2024 г.
- ^ "лицо.лицо" . Словарь гавайского языка . Улукау: Гавайская электронная библиотека. Архивировано из оригинала 18 сентября 2013 года . Проверено 1 ноября 2007 г.
- ^ «Open Social Foundation переносит работу по стандартизации в социальную веб-деятельность W3C» . Проверено 2 декабря 2015 г.
- ^ «Что такое OpenSocial? Определение в вебпедии» . www.webopedia.com . Проверено 23 ноября 2015 г.
- ^ «Friendster открывает платформу для разработчиков» . ПКМир . 28 октября 2007 года . Проверено 2 декабря 2015 г.
- ^ « hi5 Taps Widgetbox для поддержки OpenSocial и доступа к самому широкому в мире выбору виджетов». Science Letter, 9 сентября 2008 г.: 4265. Academic OneFile. Web» . go.galegroup.com . Проверено 9 сентября 2015 г.
- ^ «Дай мне посмотреть мое приложение!» . 5 февраля 2008 года. Архивировано из оригинала 9 февраля 2008 года . Проверено 5 февраля 2008 г.
- ^ Аррингтон, Майкл (5 ноября 2007 г.). «OpenSocial снова взломали» . ТехКранч . Проверено 6 ноября 2007 г.
- ^ Аррингтон, Майкл (5 ноября 2007 г.). «OpenSocial снова взломали» . ТехКранч . Проверено 24 июля 2010 г.
- ^ Хезель, Матиас; Яконо, Луиджи Ло (31 мая 2010 г.). Декер, Барт Де; Шаумюллер-Бихль, Ингрид (ред.). Безопасность в службах социальных сетей, оснащенных OpenSocial . Конспекты лекций по информатике. Шпрингер Берлин Гейдельберг. стр. 40–52. дои : 10.1007/978-3-642-13241-4_5 . ISBN 978-3-642-13240-7 .
- ^ Шонфельд, Эрик (6 декабря 2007 г.). «OpenSocial все еще «не открыт для бизнеса» » . ТехКранч . Проверено 24 июля 2010 г.
- ^ Jump up to: а б Марк Марум (1 января 2013 г.). «Примечания к выпуску спецификации OpenSocial 2.5.1» . Гитхаб . Проверено 28 ноября 2015 г.
- ^ Jump up to: а б Марк Марум (1 января 2013 г.). «Примечания к выпуску спецификации OpenSocial 2.5.0» . Гитхаб . Проверено 28 ноября 2015 г.
- ^ Jump up to: а б Марк Марум (1 января 2013 г.). «Примечания к выпуску спецификации OpenSocial 2.0.1» . Гитхаб . Проверено 28 ноября 2015 г.
- ^ Jump up to: а б Марк Марум (1 января 2013 г.). «Примечания к выпуску спецификации OpenSocial 2.0.0» . Гитхаб . Проверено 28 ноября 2015 г.
- ^ Jump up to: а б Марк Марум (1 января 2013 г.). «Примечания к выпуску спецификации OpenSocial 1.1.0» . Гитхаб . Проверено 28 ноября 2015 г.
- ^ Jump up to: а б Марк Марум (1 января 2013 г.). «Примечания к выпуску спецификации OpenSocial 0.9.0» . Гитхаб . Проверено 28 ноября 2015 г.
- ^ Jump up to: а б Марк Марум (1 января 2013 г.). «Примечания к выпуску спецификации OpenSocial 1.8.1» . Гитхаб . Проверено 28 ноября 2015 г.
- ^ Jump up to: а б Марк Марум (1 января 2013 г.). «Примечания к выпуску спецификации OpenSocial 0.8.0» . Гитхаб . Проверено 28 ноября 2015 г.
- ^ Jump up to: а б Марк Марум (1 января 2013 г.). «Примечания к выпуску спецификации OpenSocial 0.7.0» . Гитхаб . Проверено 28 ноября 2015 г.
- ^ Jump up to: а б Марк Марум (1 января 2013 г.). «Примечания к выпуску спецификации OpenSocial 0.6.0» . Гитхаб . Проверено 28 ноября 2015 г.
- ^ Jump up to: а б Марк Хопкинс (9 ноября 2007 г.). «Предварительная версия контейнера OpenSocial» . Машаемый . Проверено 28 ноября 2015 г.