aetherz-uploader
Version:
A simple any file hosting uploader for node.js
24 lines (21 loc) • 789 B
JavaScript
import axios from "axios";
import FormData from "form-data";
import { FileSize, MimeType } from "./../utils/helper.js";
export async function QuaxUploader(buffer) {
if(!Buffer.isBuffer(buffer)) throw Error('Invalid buffer input!');
if((await FileSize(buffer)) >= 262291456) throw Error('Max size upload for QuaxCDN is only 256MB!');
const mime = await MimeType(buffer);
const form = new FormData();
form.append("files[]", Buffer.from(buffer), {
filename: "zxn-" + Date.now() + "." + mime.ext,
contentType: mime.mime
});
const raw = await axios.post("https://qu.ax/upload.php", form, {
headers: {
...form.getHeaders(),
'origin': 'https://pomf.lain.la',
'user-agent': 'Postify/1.0.0'
}
});
return raw?.data?.files[0]?.url || null;
}