Update index.js
Browse files
index.js
CHANGED
|
@@ -1,11 +1,9 @@
|
|
| 1 |
const yts = require('yt-search');
|
| 2 |
const morgan = require('morgan');
|
| 3 |
const express = require('express');
|
| 4 |
-
const { File } = require('megajs');
|
| 5 |
|
| 6 |
// Regex untuk mengidentifikasi URL YouTube dan Mega
|
| 7 |
const ytIdRegex = /(?:http(?:s|):\/\/|)(?:(?:www\.|)?youtube(?:\-nocookie|)\.com\/(?:shorts\/)?(?:watch\?.*(?:|\&)v=|embed\/|v\/)?|youtu\.be\/)([-_0-9A-Za-z]{11})/;
|
| 8 |
-
const megaRegex = /https:\/\/mega\.nz\/file\/([A-Za-z0-9]+)(?:#([A-Za-z0-9-_]+))?/;
|
| 9 |
|
| 10 |
// Fungsi untuk melakukan HTTP POST request
|
| 11 |
const post = async (url, form, headers = {}) => {
|
|
@@ -131,31 +129,4 @@ const app = express()
|
|
| 131 |
res.json({ message: e });
|
| 132 |
}
|
| 133 |
})
|
| 134 |
-
.get('/megajs', async (req, res) => {
|
| 135 |
-
try {
|
| 136 |
-
let { url } = req.query;
|
| 137 |
-
const match = url.match(megaRegex);
|
| 138 |
-
if (!match) return res.json({ message: 'Invalid URL' });
|
| 139 |
-
|
| 140 |
-
const id = match[1];
|
| 141 |
-
const query = match[2] || ''; // Jika tidak ada query, gunakan string kosong
|
| 142 |
-
|
| 143 |
-
// If there's a query, add a hash symbol to the URL
|
| 144 |
-
const fileURL = query ? `https://mega.nz/file/${id}#${query}` : `https://mega.nz/file/${id}`;
|
| 145 |
-
|
| 146 |
-
const file = File.fromURL(fileURL);
|
| 147 |
-
await file.loadAttributes();
|
| 148 |
-
|
| 149 |
-
const data = await file.downloadBuffer();
|
| 150 |
-
res.json({
|
| 151 |
-
name: file.name, // Nama file
|
| 152 |
-
size: file.size, // Ukuran file dalam byte
|
| 153 |
-
contents: data.toString() // Konten file dalam format string
|
| 154 |
-
});
|
| 155 |
-
} catch (error) {
|
| 156 |
-
console.error(error);
|
| 157 |
-
res.json({ message: error.message });
|
| 158 |
-
}
|
| 159 |
-
})
|
| 160 |
-
|
| 161 |
.listen(7860, () => console.log('App running on port 7860'));
|
|
|
|
| 1 |
const yts = require('yt-search');
|
| 2 |
const morgan = require('morgan');
|
| 3 |
const express = require('express');
|
|
|
|
| 4 |
|
| 5 |
// Regex untuk mengidentifikasi URL YouTube dan Mega
|
| 6 |
const ytIdRegex = /(?:http(?:s|):\/\/|)(?:(?:www\.|)?youtube(?:\-nocookie|)\.com\/(?:shorts\/)?(?:watch\?.*(?:|\&)v=|embed\/|v\/)?|youtu\.be\/)([-_0-9A-Za-z]{11})/;
|
|
|
|
| 7 |
|
| 8 |
// Fungsi untuk melakukan HTTP POST request
|
| 9 |
const post = async (url, form, headers = {}) => {
|
|
|
|
| 129 |
res.json({ message: e });
|
| 130 |
}
|
| 131 |
})
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 132 |
.listen(7860, () => console.log('App running on port 7860'));
|