blob
The CandidType
object blob
corresponds to the Candid type blob, is inferred to be a TypeScript Uint8Array
and will be decoded into a JavaScript Uint8Array at runtime.
TypeScript or JavaScript:
import { blob, Canister, query } from 'azle/experimental';
export default Canister({
getBlob: query([], blob, () => {
return Uint8Array.from([68, 73, 68, 76, 0, 0]);
}),
printBlob: query([blob], blob, (blob) => {
console.log(typeof blob);
return blob;
})
});
Candid:
service : () -> {
getBlob : () -> (vec nat8) query;
printBlob : (vec nat8) -> (vec nat8) query;
}
dfx:
dfx canister call candid_canister printBlob '(vec { 68; 73; 68; 76; 0; 0; })'
(blob "DIDL\00\00")
dfx canister call candid_canister printBlob '(blob "DIDL\00\00")'
(blob "DIDL\00\00")