Track Upload Progress with Subscriptions
Às dèidh dhut faidhle a luchdachadh suas chun URL S3 ro-shoidhnichte, bidh an àrd-ùrlar ga phròiseasadh gu asynchronous.
Cleachd subscribeUserFeed airson tachartasan luchdachadh suas anns an àm fìor seach dìreach dèanamh sgrùdaidh tron ghluasad.
Airson an cruth coitcheann air tachartasan, faic Subscription Event Format.
Feed and Category
Thèid tachartasan luchdachadh suas a lìbhrigeadh air:
subscribeUserFeed
Cleachdadh iad:
category: "upload"
Event Names
Tha pròiseas luchdachadh suas a’ gineadh sreath de thachartasan leithid:
uploadScanneduploadTypeCheckeduploadConvertinguploadFlatteneduploadTagsParseduploadPdfMetaExtracteduploadCompleteduploadFailed
Upload Event Payload
Tha cruth payload luchdachadh suas mar seo:
{
"version": "1.0",
"eventId": "evt...",
"timestamp": "2026-04-24T10:38:36.822Z",
"level": "INFO",
"event": "uploadCompleted",
"category": "upload",
"groupId": null,
"userId": "usr...",
"requestId": null,
"batchId": null,
"error": null,
"data": {
"id": "tmp...",
"key": "upload/usr.../tmp....pdf",
"code": "UPLOADOK"
}
}
data.code a’ gleidheadh còd nam pròiseasan ìre ìosal rè gluasad agus co-fhreagarrachd.
Subscription Operation
subscription SubscribeUserFeed {
subscribeUserFeed {
userId
data
}
}
JavaScript Example
const parseEnvelope = (payload) => {
const raw = payload?.data;
if (!raw) return null;
return typeof raw === 'string' ? JSON.parse(raw) : raw;
};
const handleUserFeed = ({ data }) => {
const wrapper = data?.subscribeUserFeed;
const event = parseEnvelope(wrapper);
if (event?.category !== 'upload') return;
switch (event.event) {
case 'uploadCompleted':
console.log('upload complete', event.data.id, event.data.key);
break;
case 'uploadFailed':
console.error('upload failed', event.data.code, event.data.key);
break;
default:
console.log('upload progress', event.event, event.data.code);
}
};
When to Use This
Tha seo feumail sa mhòr-chuid nuair a tha thu airson:
- taisbeanadh doras adhartais no clàr-ama inbhe luchdachadh suas a shealltainn
- fàilligeadh dearbhadh asynchronous a lorg às dèidh a bhith soirbheachail le PUT S3
- freagairt sa bhad nuair a tha teamplaid no goireas a chaidh a luchdachadh suas deiseil