Change mg_http_upload API

This commit is contained in:
Sergey Lyubka committed 2022-06-30 21:54:50 +01:00
1 parent 56412193e7
commit 99f0688377
10 files changed
+135 -56

No files matched your search

@@ -18,12 +18,19 @@ var sendFileData = function(name, data, chunkSize) {
var chunk = data.subarray(offset, offset + chunkSize) || '';
var opts = {method: 'POST', body: chunk};
var url = '/upload?offset=' + offset + '&name=' + encodeURIComponent(name);
var ok;
setStatus(
'sending bytes ' + offset + '..' + (offset + chunk.length) + ' of ' +
data.length);
fetch(url, opts).then(function(res) {
if (chunk.length > 0) sendChunk(offset + chunk.length);
});
'Upoading ' + name + ', bytes ' + offset + '..' +
(offset + chunk.length) + ' of ' + data.length);
fetch(url, opts)
.then(function(res) {
if (res.ok && chunk.length > 0) sendChunk(offset + chunk.length);
ok = res.ok;
return res.text();
})
.then(function(text) {
if (!ok) setStatus('Error: ' + text);
});
};
sendChunk(0);
};
@@ -21,7 +21,7 @@
in small chunks.
<br/><br/>
In this example, the JavaScript code on this page sends the chosen
file in 4K chunks using the <code>/upload</code> endpoint.
file in 2Kb chunks using the <code>/upload</code> endpoint.
The uploaded file is stored in the <code>/tmp</code> directory by
the helper API function <code>mg_http_upload()</code>
</div>