SDK de Go - Formato de Serialización Canónica Binaria (BCS)
Todos los argumentos de transacción para el SDK de Go de Aptos están codificados como bytes en formato de
Serialización Canónica Binaria (BCS). Este es el formato que la cadena de Aptos
reconoce, con tipos específicos (ej. En lugar de un uint64 o big.Int, usa
tipos como u64
o u128
)
Puedes usar directamente el formato BCS para construir transacciones especificando los tipos de argumento explícitamente así:
accountBytes, err := bcs.Serialize(&bob.Address) if err != nil { panic("Failed to serialize bob's address:" + err.Error()) }
amountBytes, err := bcs.SerializeU64(TransferAmount) if err != nil { panic("Failed to serialize transfer amount:" + err.Error()) } rawTxn, err := client.BuildTransaction(alice.AccountAddress(), aptos.TransactionPayload{ Payload: &aptos.EntryFunction{ Module: aptos.ModuleId{ Address: aptos.AccountOne, Name: "aptos_account", }, Function: "transfer", ArgTypes: []aptos.TypeTag{}, Args: [][]byte{ accountBytes, amountBytes, }, }}, )
Puedes aprender más sobre BCS explorando el repositorio de BCS en GitHub.