Basic put/get operations with Storage wrapper
Basic put/get operations with Storage wrapper
import { Storage, createMemory } from "@anabranch/storage"; const connector = createMemory({ prefix: "files/" }); const storage = await Storage.connect(connector).run(); await storage.put("hello.txt", "Hello, World!").run(); const object = await storage.get("hello.txt").run(); console.log(await new Response(object.body).text());
Stream listing with concurrent processing
Stream listing with concurrent processing
const connector = createMemory(); const storage = await Storage.connect(connector).run(); await storage.put("users/1.json", '{"name": "Alice"}'); await storage.put("users/2.json", '{"name": "Bob"}'); const { successes, errors } = await storage.list("users/") .withConcurrency(5) .map(async (entry) => await processEntry(entry)) .tapErr((err) => console.error("Failed:", err)) .partition();
Head request for metadata
Head request for metadata
import { Storage, createMemory } from "@anabranch/storage"; const connector = createMemory(); const storage = await Storage.connect(connector).run(); await storage.put("image.png", imageBytes, { contentType: "image/png" }).run(); const metadata = await storage.head("image.png").run(); console.log(metadata.contentType, metadata.size);