MCPcopy Create free account
hub / github.com/MeshInspector/MeshLib / web_req_send

Function web_req_send

wasm/web_request.js:76–113  ·  view source on GitHub ↗
(url, async, ctxId)

Source from the content-addressed store, hash-verified

74}
75
76var web_req_send = function (url, async, ctxId) {
77 create_web_ctx_if_needed(ctxId);
78 var urlCpy = url;
79 url = web_req_build_url(url, ctxId);
80 var req = new XMLHttpRequest();
81 if (async)
82 req.timeout = web_req_ctxs[ctxId].timeout;
83 req.open(web_req_ctxs[ctxId].method, url, async);
84 for (var i = 0; i < web_req_ctxs[ctxId].headers.length; i++) {
85 req.setRequestHeader(web_req_ctxs[ctxId].headers[i].key, web_req_ctxs[ctxId].headers[i].value);
86 }
87 if (web_req_ctxs[ctxId].use_upload_callback) {
88 req.upload.addEventListener('progress', (event) => {
89 if (event.lengthComputable) {
90 var v = event.loaded / event.total;
91 Module.ccall('emsCallUploadCallback', 'number', ['number', 'number'], [v, ctxId]);
92 }
93 });
94 }
95 if (web_req_ctxs[ctxId].use_download_callback) {
96 req.addEventListener('progress', (event) => {
97 if (event.lengthComputable) {
98 var v = event.loaded / event.total;
99 Module.ccall('emsCallDownloadCallback', 'number', ['number', 'number'], [v, ctxId]);
100 }
101 });
102 }
103 req.onloadend = (e) => {
104 var res = {
105 url: urlCpy,
106 code: req.status,
107 text: req.responseText,
108 error: (req.status < 200 || req.status > 399) ? req.statusText : null
109 };
110 Module.ccall('emsCallResponseCallback', 'number', ['string', 'bool', 'number'], [JSON.stringify(res), async, ctxId]);
111 };
112 req.send(web_req_get_payload(ctxId));
113}
114
115var web_req_sync_download = function (url, outputPath, ctxId) {
116 create_web_ctx_if_needed(ctxId);

Callers 1

sendMethod · 0.85

Calls 5

create_web_ctx_if_neededFunction · 0.85
web_req_build_urlFunction · 0.85
web_req_get_payloadFunction · 0.85
openMethod · 0.80
sendMethod · 0.45

Tested by

no test coverage detected