Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 16 additions & 3 deletions src/backend/src/services/worker/src/s2w-router.js
Original file line number Diff line number Diff line change
Expand Up @@ -85,8 +85,17 @@ function inits2w() {
let response = await mapping[1](event);
if (!(response instanceof Response)) {
try {
response = new Response(response);
} catch(e) {
if (response instanceof Blob ||
response instanceof ArrayBuffer ||
response instanceof Uint8Array.__proto__ ||
response instanceof ReadableStream ||
response instanceof URLSearchParams ||
typeof (response) === "string") {
response = new Response(response);
} else {
response = new Response(JSON.stringify(response), { headers: { 'content-type': 'application/json' } })
}
} catch (e) {
throw new Error("Returned response by handler was neither a Response object nor an object which can implicitly be converted into a Response object");
}
}
Expand All @@ -97,7 +106,11 @@ function inits2w() {
}
}
} catch (e) {
return new Response(e, { status: 500, statusText: "Server Error" })
const response = new Response(e, { status: 500, statusText: "Server Error" })
if (this.handleCors && !response.headers.has("access-control-allow-origin")) {
response.headers.set("Access-Control-Allow-Origin", "*");
}
return response;
}

return new Response("Path not found", { status: 404, statusText: "Not found" });
Expand Down
2 changes: 1 addition & 1 deletion src/puter-js/src/modules/Workers.js
Original file line number Diff line number Diff line change
Expand Up @@ -76,7 +76,7 @@ export class WorkersHandler {

workerName = workerName.toLocaleLowerCase(); // just incase
try {
return (await puter.kv.get("user-workers"))[workerName].url;
return (await puter.kv.get("user-workers"))[workerName];
} catch (e) {
throw new Error("Failed to get worker");
}
Expand Down