
Hello everyone! My current code of uploading a file is as follows:
createFile(
bucketId: 'id',
file: InputFile(),
fileId: 'unique()',
);
The above code is executed from the client side. The problem here is that an evil person could reverse engineer my code/request and pass anything as fileId
. 😈 Such person could do this for example, and the file will end up in my bucket just fine with that modified ID:
createFile(
bucketId: 'id',
file: InputFile(),
fileId: 'TROLLOLOLOL',
);
I don't want the client to have any control over what file ID is uploaded. I could use a function that executes by the file upload trigger, but that doesn't change the fact that the file with the modified ID will be in my bucket, even though it’s for a short time.
The best way (I think) to solve this problem would by passing the file to a function and then process it through that same function. My question is: Is it possible to upload a file trough a function and if so, are there any examples of this?

FYI, it's best to wrap multiline with 3 backticks. See: https://www.markdownguide.org/extended-syntax/#syntax-highlighting.
Recommended threads
- Server Error when Pushing a Function
Get this ambiguous error when trying to push my function, it's TypeScript using NodeJS 18 ``` ? Which functions would you like to push? get-grades (get-grades)...
- Hola equipo de soporte,
Hola equipo de soporte, Estoy desarrollando una Function en Appwrite Cloud con Node.js 22 y el siguiente package.json: {  "name": "upload-whitelist",  "type"...
- [Node.js SDK] Bypass 2GB file limit?
Hello. Using either InputFile.fromPath or InputFile.fromBuffer throws this error: File size (2295467305) is greater than 2 GiB Bucket limit etc. is setup corre...
