23 lines
855 B
JavaScript
23 lines
855 B
JavaScript
export async function onRequest(context) {
|
|
const db = context.env.cryptopad;
|
|
if (context.params.storage[0] == "delete") {
|
|
const deleteReq = context.params.storage[1];
|
|
await db.delete(deleteReq);
|
|
return new Response();
|
|
}
|
|
const key = context.params.storage[0];
|
|
console.log(context);
|
|
if (context.request.method == "POST") {
|
|
const formData = await context.request.formData();
|
|
const value = formData.get("value");
|
|
console.log("Inserting", key, value);
|
|
// this doesn't use numbered parameters because miniflare behaves differently because better-sqlite3 doesn't handled numbered params well
|
|
// CF really needs named support and better-sqlite3 really needs to fix this
|
|
await db.put(key, value);
|
|
|
|
return new Response();
|
|
}
|
|
const value = await db.get(key);
|
|
return new Response(JSON.stringify(value));
|
|
}
|