How do you choose between durable objects and r2? The docs don't say much about DO.
How do you choose between durable objects and r2? The docs don't say much about DO.

[object Object] are you sure the file was uploaded to R2 correctly?
[object Object][object Object][object Object]firmwareBin = await env.R2.get(decodeURI(key));
let { readable, writable } = new FixedLengthStream(175104);
firmwareBin.body.pipeTo(writable);
return new Response(readable, firmwareBin);