ВДДКС
Эта статья включает список общих ссылок , но в ней отсутствуют достаточные соответствующие встроенные цитаты . ( сентябрь 2009 г. ) |
WDDX (Web Distributed Data eXchange) — это независимый от языка программирования , платформы и транспорта механизм обмена данными, предназначенный для передачи данных между различными средами и разными компьютерами.
История
[ редактировать ]WDDX был создан Симеоном Симеоновым из Allaire Corporation в 1998 году. [ 1 ] изначально для серверной среды ColdFusion . Позже в том же году WDDX был открыт с открытым исходным кодом. [ 2 ]
Использование
[ редактировать ]WDDX функционально сопоставим с XML-RPC и WIDL . [ 3 ] Спецификация поддерживает простые типы данных, такие как число, строка , логическое значение и т. д., а также их сложные агрегаты в таких формах, как структуры , массивы и наборы записей (данные строки/столбца, обычно поступающие из запросов к базе данных).
Данные кодируются в XML с использованием XML 1.0 DTD , создавая независимое от платформы, но относительно громоздкое представление. [ 4 ] Данные в формате XML затем можно отправить на другой компьютер с помощью HTTP , FTP или другого механизма передачи. На принимающем компьютере должно быть установлено программное обеспечение с поддержкой WDDX для преобразования закодированных данных в собственное представление данных получателя. WDDX также можно использовать для сериализации структур данных в хранилище (файловую систему или базу данных). Многие приложения используют WDDX для передачи сложных данных в браузеры, где ими можно манипулировать с помощью JavaScript , в качестве альтернативы JSON .
<wddxPacket version='1.0'>
<header comment='PHP'/>
<data>
<struct>
<var name='pi'>
<number>3.1415926</number>
</var>
<var name='cities'>
<array length='3'>
<string>Austin</string>
<string>Novato</string>
<string>Seattle</string>
</array>
</var>
</struct>
</data>
</wddxPacket>
Принятие
[ редактировать ]WDDX в основном используется ColdFusion и по состоянию на февраль 2022 года все еще поддерживается Adobe.
За пределами ColdFusion существуют библиотеки для чтения и записи этого формата Ruby . [ 6 ] Питон , [ 7 ] PHP , Java , C++ , .NET , [ 8 ] Экшнскрипт , [ 9 ] Лисп , Хаскель , Перл .
Раньше PHP предлагал комплексную поддержку WDDX, который можно было использовать в качестве формата для хранения информации о сеансе. [ 10 ] до версии 7.4. С тех пор он был удален из базового языка, но все еще доступен через PECL. [ 11 ] Причиной этого было отсутствие стандартизации формата и новые форматы, такие как JSON, более распространенные. [ 12 ] Уязвимость была исправлена в 2007 году. [ 13 ]
Примечания
[ редактировать ]- ^ Симеонов, Симеон. «WDDX: Распределенные данные для Интернета» . Проверено 5 февраля 2007 г.
- ^ Итои, Никки Гот (февраль 1999 г.). «Объединение Интернета: предприятия надеются, что протокол ICE уменьшит проблемы с обменом контентом в Интернете» . Красная селедка . Архивировано из оригинала 13 октября 1999 года.
- ^ Уделл, Джон (7 июня 1999 г.). «Изучение XML-RPC: DCOM? CORBA? RMI? Почему не просто XML-RPC?» . Байт . Архивировано из оригинала 4 марта 2000 года . Проверено 17 ноября 2015 г.
- ^ «Белая книга WDDX Джереми Аллера» .
- ^ «PHP: WDDX — Руководство» . www.php.net .
- ^ http://www.juretta.com/log/2007/01/31/rails_wddx_request/ Использование WDDX с Ruby on Rails]
- ^ Использование WDDX с Python
- ^ Проект платформы .NET WDDX
- ^ Использование WDDX с Flex и AS3.
- ^ Эндрю Стопфорд, Программирование PHP для Windows , Landmark, New Riders, 2002.
- ^ «PHP: Удалены расширения — Руководство» .
- ^ «PHP: RFC:deprecate-and-remove-ext-WDDX» .
- ^ «Cve — Cve-2007-0908» .
Внешние ссылки
[ редактировать ]