stringtranslate.com

WDDDX-es

WDDX (Web Distributed Data eXchange) es un mecanismo de intercambio de datos independiente del lenguaje de programación , de la plataforma y del transporte , diseñado para pasar datos entre diferentes entornos y diferentes computadoras.

Historia

WDDX fue creado por Simeon Simeonov de Allaire Corporation en 1998, [1] inicialmente para el entorno de servidor ColdFusion . WDDX se convirtió en código abierto más tarde ese mismo año. [2]

Uso

WDDX es funcionalmente comparable a XML-RPC y WIDL . [3] La especificación admite tipos de datos simples como números, cadenas , booleanos , etc., y agregados complejos de estos en formas como estructuras , matrices y conjuntos de registros (datos de fila/columna, que generalmente provienen de consultas de bases de datos).

Los datos se codifican en XML utilizando un DTD XML 1.0 , lo que produce una representación independiente de la plataforma pero relativamente voluminosa. [4] Los datos codificados en XML se pueden enviar a otra computadora mediante HTTP , FTP u otro mecanismo de transmisión. La computadora receptora debe tener un software compatible con WDDX para traducir los datos codificados a la representación de datos nativa del receptor. WDDX también se puede utilizar para serializar estructuras de datos en el almacenamiento (sistema de archivos o base de datos). Muchas aplicaciones utilizan WDDX para pasar datos complejos a navegadores donde se pueden manipular con JavaScript , como una alternativa a JSON .

Ejemplo de php.net : [5]

<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>                    


Adopción

WDDX es utilizado principalmente por ColdFusion y, a febrero de 2022, todavía cuenta con soporte de Adobe.

Fuera de ColdFusion, existen bibliotecas para leer o escribir este formato: Ruby , [6] Python , [7] PHP , Java , C++ , .NET , [8] Actionscript , [9] lisp , Haskell , Perl .

PHP solía ofrecer un soporte completo para WDDX, que podía usarse como formato para almacenar información de sesión [10] hasta la versión 7.4. Desde entonces se eliminó del lenguaje base, pero aún está disponible a través de PECL. [11] La razón fue la falta de estandarización del formato y la aparición de nuevos formatos como JSON más comunes. [12] En 2007 se corrigió una vulnerabilidad. [13]

Notas

  1. ^ Simeonov, Simeon. "WDDX: Datos distribuidos para la Web" . Consultado el 5 de febrero de 2007 .
  2. ^ Itoi, Nikki Goth (febrero de 1999). "Sindicating the Web: Businesses are hope that the ICE protocol will reduce the Web's content-sharing hasles" (La red de distribución de contenidos: las empresas esperan que el protocolo ICE reduzca los problemas de intercambio de contenidos en la Web). Red Herring ( Pista falsa). Archivado desde el original el 13 de octubre de 1999.
  3. ^ Udell, Jon (7 de junio de 1999). "Explorando XML-RPC: ¿DCOM? ¿CORBA? ¿RMI? ¿Por qué no simplemente XML-RPC?". Byte . Archivado desde el original el 4 de marzo de 2000. Consultado el 17 de noviembre de 2015 .
  4. ^ "Libro blanco de WDDX por Jeremy Allaire".
  5. ^ "PHP: WDDX - Manual". www.php.net .
  6. ^ http://www.juretta.com/log/2007/01/31/rails_wddx_request/ Uso de WDDX con Ruby on Rails]
  7. ^ Usando WDDX con Python
  8. ^ Proyecto WDDX de la plataforma .NET
  9. ^ Uso de WDDX con Flex y AS3
  10. ^ Andrew Stopford, Programación PHP para Windows , Landmark, New Riders, 2002.
  11. ^ "PHP: Extensiones eliminadas - Manual".
  12. ^ "PHP: RFC: desaprobar y eliminar ext-WDDX".
  13. ^ "Cve - Cve-2007-0908".

Enlaces externos