Automatic Message Format (AMF0 + AMF3-compatible) HTML5 Javascript Library
npm install amf-jsThis project uses the modern Javascript Typed Array specification (e.g, ArrayBuffer, U8intArray, DataView, etc.).
Designed for browsers or Node.JS.
- AMF0 Spec
- AMF3 Spec
- Action Message Format on Wikipedia
- Augmented Backus Naur Form
- Backus Naur Form
AS3 Object serialization:
``actionscript
import com.hurlant.util.Hex;
import flash.utils.ByteArray;
// ...
public function serialize():void {
var o:Object = new Object();
o.name = "John Doe";
var byteArray:ByteArray = new ByteArray();
byteArray.writeObject(o);
trace("serialized: "+ Hex.fromArray(byteArray));
}
`
AS3 Object deserialization:
`actionscript
import com.hurlant.util.Hex;
import flash.utils.ByteArray;
// ...
public function dumpObj(oObj:Object, sPrefix:String = ""):void {
sPrefix == "" ? sPrefix = "---" : sPrefix += "---";
for (var i:* in oObj) {
trace(sPrefix, i + " : " + oObj[i], " ");
if (typeof(oObj[i]) == "object") dumpObj(oObj[i], sPrefix);
}
}
public function deserialize():void {
var byteArray:ByteArray = new ByteArrray();
// ... fill with bytes ...
var o:Object = byteArray.readObject();
trace("deserialized: "+ this.name +" hex= "+ Hex.fromArray(ba));
dumpObj(o);
}
``