how can i achive uploading a file to storage, using a url?
i attach a photo of an example i want to do, is that possible and any hints on how to do it?
You cant
There is no possible way??? Tried to fetch it and parse the buffer to it but did not work sadly
You should be able to upload via a buffer
async function uploadImage(
imageUrl,
imageName,
bucketId = process.env.IMAGES_BUCKET_ID
) {
try {
const imageResponse = await fetch(imageUrl);
if (!imageResponse.ok) {
throw new Error("Failed to fetch image from URL");
}
const arrayBuffer = await imageResponse.arrayBuffer();
const buffer = Buffer.from(arrayBuffer);
const inputFile = sdk.InputFile.fromBuffer(buffer, imageName);
const result = await storage.createFile(bucketId, ID.unique(), inputFile);
return result;
} catch (error) {
console.error("Error uploading image:", error);
throw error;
}
}
Seems correct to me
Error uploading image: TypeError [ERR_INVALID_ARG_TYPE]: The "path" argument must be of type string. Received type number (3798243238)
Ah nvm see the error imageName should be an string
What sdk are you using?
Appwrite
const sdk = require("node-appwrite");
Maybe you can use InputFile.fromBlob(await imageResponse.blob())
Btw there's a new version of the node sdk
I tried updating lately and had loads of errors... So I just went back to the old one
Recommended threads
- Storage files aren’t showing on mobile
hi, what can be the problem? i have a storage and there are images in it, the permissions are read for All Users, everything is fine on desktop, but on mobile t...
- Delete storage files all at once
I am using Appwrite Cloud. I want to delete all storage files in my bucket similar to how I can select all documents in a collection and delete them all at once...
- Storage images are not showing on mobile
Hi, can anyone help me? I have some images on the storage, and it is not shown on mobile, on desktop everything is fine.