Adobe Integrated Runtime e Flash Player di utilizzare AMF per comunicare tra & nbsp; applicazioni e un server remoto. AMF codifica chiamate di procedura remota (RPC) in una rappresentazione binaria compatta che può essere trasferita su HTTP / HTTPS o il protocollo RTMP / RTMPS.
Oggetti e dati i valori vengono serializzati in questo formato binario, che aumenta le prestazioni, consentendo alle applicazioni di caricare i dati fino a 10 volte più veloce con i formati di testo, come XML o SOAP.
AMF3, la serializzazione di default per ActionScript 3.0, offre vari
vantaggi rispetto AMF0, che viene utilizzato per ActionScript 1.0 e 2.0.
AMF3 invia i dati attraverso la rete più efficiente rispetto AMF0. Supporta l'invio di int e uint oggetti come numeri interi e supporta i tipi di dati che sono disponibili solo in ActionScript 3.0, come ArrayCollection, ByteArray e ObjectProxy
Caratteristiche :.
< p>- AMF0 encoder / decoder per legacy Adobe Flash Players (versione 6-8)
- AMF3 encoder / decoder per il nuovo formato AMF in Adobe Flash Player 9 e versioni successive
- opzionale C-estensione per le massime prestazioni, realizzato con Cython
- Il supporto per IExternalizable, ArrayCollection, ObjectProxy, ByteArray, RecordSet, RemoteObject e più
- gateway Remoting per Twisted, Django, Google App Engine, Piloni, TurboGears2, web2py e qualsiasi quadro WSGI compatibile
- Adapter Framework per integrare bene con progetti di terze parti di Python, tra cui Django, Google App Engine e SQLAlchemy
- autenticazione / SetCredentials
- client Python AMF con HTTP (S) e il supporto di autenticazione
- Servizio Browser (intestazione DescribeService) le richieste corredate
- Local Shared Object sostegno
Supporto
Cosa c'è di nuovo in questa versione:
- Fornire supporto per i pacchetti AMF3 remoti (BlazeDS in qualità di cliente ).
- traceback errore AMF0 Remoting sarà una lista piuttosto che una stringa.
- Accendere il client PyAMF usare urllib2. Fornisce il supporto per proxy e risposte gzip. Grazie aPaulWinkeler per il sollevamento di carichi pesanti.
- Aggiunto il supporto per SQLAlchemy 0.6beta1.
- Introdotto un nuovo adattatore per Elixir, un wrapper sottile intorno SQLAlchemy.
- type_map semplificata in classi Encoder.
- Corretto un piccolo bug nella manipolazione di rapporti M2M vuoti con oggetti Django unpersisted.
- Aggiornamenti per sostenere al plasma.
- Corretto un piccolo bug in BaseGateway.removeService, grazie agronholm per la patch.
- miglioramenti delle prestazioni Python AMF3 decodifica pura (fino a x3).
- non ASCII nel messaggio di eccezione potrebbe causare un UnicodeError.
- Tutti gli adattatori ORM non saranno più impostare le proprietà come attributi statici.
- Predefinito per utilizzare __new__ per la creazione esempio se disponibile.
- Possibilità di unregister_type_alias.
- __ AMF __. Procura effettivamente funziona.
- adattatore Django utilizza ora get_all_field_names per trovare proprietà modello.
- ClassAlias.bases aggiunto e il sostegno di alberi di classe profondo per le classi tipizzati.
- use_references parola arg è stato rimosso dal amf3.Encoder.write *.
- ClassAlias.getEncodableAttributes ora torneranno un'unica dict di proprietà.
- PyAMF Cliente solleverà un'eccezione se il gateway remoto restituisce un errore di servizio.
- Risolto un bug di riferimento con le istanze non salvati modello Django. Grazie a Wolver per la patch e test.
- Corretto un piccolo bug nella decodificazione relazioni Django quando dichiarato come statico. Grazie a Wolver per la patch.
- eccezioni rimosso da tutte le Contesto e pyamf.util.Indexed * classi.
- Relazioni vuoti Django vengono codificati come Nessuno, non pyamf.Undefined.
- pyamf.ClientType rimosso, in quanto non è conforme spec.
Caratteri
Cosa c'è di nuovo in versione 0.6b2:
- Fornire supporto per i pacchetti AMF3 remoti (BlazeDS agisce in qualità di client)
- traceback errore AMF0 Remoting sarà una lista, piuttosto che una stringa
- Accendere il client PyAMF usare urllib2. Fornisce il supporto per proxy e risposte gzip. Grazie aPaulWinkeler per il sollevamento di carichi pesanti.
- Aggiunto il supporto per SQLAlchemy 0.6beta1
- Introdotto un nuovo adattatore per Elixir, un wrapper sottile intorno SQLAlchemy
- type_map semplificata in classi Encoder
- Corretto un piccolo bug nella manipolazione di rapporti M2M vuoti con oggetti Django unpersisted
- Aggiornamenti per sostenere Plasma
- Corretto un piccolo bug in BaseGateway.removeService, grazie agronholm per la patch
- miglioramenti delle prestazioni Python AMF3 decodifica Pure (fino a x3)
- non ASCII nel messaggio di eccezione potrebbe causare un UnicodeError
- Tutti gli adattatori ORM non saranno più definiti attributi statici
- Predefinito per utilizzare __new__ per la creazione esempio se disponibile.
- Possibilità di unregister_type_alias
- __ AMF __. Delega effettivamente funziona
- adattatore Django utilizza ora get_all_field_names per trovare proprietà modello
- ClassAlias.bases aggiunto e il sostegno di alberi di classe profonda per le classi digitate
- use_references parola arg è stato rimosso dal amf3.Encoder.write *
- ClassAlias.getEncodableAttributes ora torneranno un'unica dict di proprietà
- PyAMF Cliente solleverà un'eccezione se il gateway remoto restituisce un errore di servizio
- Risolto un bug di riferimento con le istanze non salvati modello Django. Grazie a Wolver per la patch e test
- Corretto un piccolo bug nella decodificazione relazioni Django quando dichiarato come statico. Grazie a Wolver per la patch.
- eccezioni rimosso da tutte le Contesto e pyamf.util.Indexed * Classi
- Relazioni vuoti Django vengono codificati come Nessuno, non pyamf.Undefined
- pyamf.ClientType rimosso, in quanto non è conforme spec
Caratteri
Proprietà
Cosa c'è di nuovo nella versione 0.4.2:
- Il supporto per la decodifica della proprietà 'sorgente' su ArrayCollections
- Risolto un problema nella adattatore GAE dove le proprietà dinamiche sarebbero mancare su oggetti di riferimento.
- Risolto un problema critico con il conteggio di riferimento AMF0 durante la codifica delle risposte remoti.
- Forti intestazione http gestione nel client.
- Il supporto per Django i18n ugettext_lazy.
- Supporto di microsecondi per gli oggetti datetime. Grazie a Derek Payton per la patch.
- Aggiunto il supporto per i tipi di proprietà su SQLAlchemy mappato classi.
- Aggiunto il supporto per i tipi di proprietà di Google AppEngine db.Model e db.Expando.
Requisiti :
- Python 2.3 o superiore
- fpconst 0.7.2 o superiore (quando si usa Python in 2.4 o Windows)
- ElementTree 1.2.6 o successivo (incluso in Python 2.5 e successivi)
- uuid 1.30 o più recente (incluso in Python 2.5 e successivi)
I commenti non trovato