Expected duration: 1 day or less Create a simple web page example to upload a large file in chunks to back-end.
1 - Front-end JS chunks a large file into xMB (configurable) slices and upload them consecutively to the back-end server.
2- Every upload request sent to the back-end has the following information in the URL: upload id (a unique identifier that stays the same throughout the uploading of all chunks), file size (in bytes), current chunk number, and total chunks count. Example URL: //server/upload?uploadId=xxxxx&fileSize=xxxx¤tChunk=1&totalChunks=30
3- Back-end server, upon successfully receiving a chunk, sends a "success" response back to the client. At that moment the client then goes on to send the next chunk until all chunks are successfully sent.
4- If the client encounters any error at any time during sending a particular chunk to the server, it will retry sending that particular chuck for x times (configurable) to see if it is successful and continues to the next chunk.
5- If sending that particular chunk still fails after x retries, the whole process of uploading the file will be aborted and an error message will be shown to the user.
6- Throughout the whole process of uploading the file, the user sees a progress bar indicating how many bytes of the total file size is uploaded to the server so far.
Use PHP on the back-end and JavaScript on the front end. You are allowed to use any standalone vanilla JavaScript/PHP library, but do not use large frameworks like jQuery, React, or Laravel
Medical Translator - English to German Category: Chemical Engineering, English (UK) Translator, English (US) Translator, German Translator, Translation Budget: $2 - $8 USD