| const fetch = require('node-fetch'); |
| const axios = require('axios') |
| const FormData = require('form-data'); |
| const { fromBuffer } = require('file-type'); |
|
|
| |
| |
| |
| |
| |
| const pomf = async (buffer) => { |
| const { ext, mime } = (await fromBuffer(buffer)) || {}; |
| const form = new FormData(); |
| form.append("files[]", buffer, { filename: `tmp.${ext}`, contentType: mime }); |
| try { |
| const { data } = await axios.post("https://pomf.lain.la/upload.php", form, { |
| headers: form.getHeaders(), |
| }); |
| console.log(data); |
| return data.files[0].url |
| } catch (error) { |
| throw error; |
| } |
| }; |
|
|
| |
| |
| |
| |
| |
| |
| const fileIO = async (buffer) => { |
| const { ext } = await fromBuffer(buffer) || {}; |
| const form = new FormData(); |
| form.append('file', buffer, `tmp.${ext}`); |
| const res = await fetch('https://file.io/?expires=1d', { |
| method: 'POST', |
| body: form |
| }); |
| const json = await res.json(); |
| if (!json.success) throw json; |
| return json.link; |
| }; |
|
|
| |
| |
| |
| |
| const api = async (buffer) => { |
| let { ext } = await fromBuffer(buffer); |
| let bodyForm = new FormData(); |
| bodyForm.append("file", buffer, "file." + ext); |
| let res = await fetch("https://8030.us.kg/api/upload.php", { |
| method: "post", |
| body: bodyForm, |
| }); |
| let data = await res.json(); |
| let resultUrl = data.result ? data.result.url : ''; |
| return resultUrl; |
| } |
|
|
|
|
| |
| |
| |
| |
| const api2 = async (buffer) => { |
| let { ext } = await fromBuffer(buffer); |
| let bodyForm = new FormData(); |
| bodyForm.append("file", buffer, "file." + ext); |
| let res = await fetch("https://file.btch.rf.gd/api/upload.php", { |
| method: "post", |
| body: bodyForm, |
| }); |
| let data = await res.json(); |
| let resultUrl = data.result ? data.result.url : ''; |
| return resultUrl; |
| } |
|
|
| module.exports = async function (inp) { |
| let err = false; |
| for (const upload of [pomf, api, api2, fileIO]) { |
| try { |
| return await upload(inp); |
| } catch (e) { |
| err = e; |
| } |
| } |
| if (err) throw err; |
| }; |
|
|