uploadFile method
Upload a file to the provider.
dataBase64 — base64-encoded file data.
mediaType — media type of the file (e.g. "application/pdf").
optsJson — optional serialized UploadFileCallOptions.
Returns the JSON-serialized UploadFileResult, or throws AimuxException.
Implementation
String uploadFile(String dataBase64, String mediaType, [String? optsJson]) {
_checkOpen();
checkJson(optsJson, 'opts_json', emptyIsDefault: true);
return withUtf8(dataBase64, (dataPtr) {
return withUtf8(mediaType, (mediaPtr) {
final optsPtr = toCStringOrNull(optsJson);
try {
return takeString(
(out) =>
_ffi.fileUpload(_handle, dataPtr, mediaPtr, optsPtr, out),
'file_upload');
} finally {
if (optsPtr != nullptr) calloc.free(optsPtr);
}
});
});
}