Sunday, February 23, 2025
Ask Downloader
// index.html
Ask Online Downloader
// script.js
document.getElementById("download").addEventListener("click", function () {
let url = document.getElementById("manualUrl").value.trim();
if (!url) {
alert("Please enter a valid URL");
return;
}
fetch("http://localhost:3000/download", {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ url: url })
})
.then(response => response.blob())
.then(blob => {
let a = document.createElement("a");
a.href = URL.createObjectURL(blob);
a.download = "video.mp4";
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
})
.catch(error => alert("Download failed: " + error));
});
// server.js (Backend Node.js + Express)
const express = require("express");
const cors = require("cors");
const { exec } = require("child_process");
const app = express();
const port = 3000;
app.use(cors());
app.use(express.json());
app.post("/download", (req, res) => {
const url = req.body.url;
if (!url) return res.status(400).send("URL is required");
const command = `yt-dlp -o - ${url}`;
const process = exec(command, { maxBuffer: 1024 * 1024 * 50 });
res.setHeader("Content-Disposition", "attachment; filename=video.mp4");
res.setHeader("Content-Type", "video/mp4");
process.stdout.pipe(res);
process.stderr.on("data", (data) => console.error("Error:", data));
});
app.listen(port, () => console.log(`Server running at http://localhost:${port}`));
Subscribe to:
Post Comments (Atom)
Ask Downloader
// index.html Ask Online Downloader Free Online Video Downloader Download // script.js document.get...
-
Bull Run The term "Bull Run" can refer to a few different historical, financial, and cultural events, but it is most common...
-
// index.html Ask Online Downloader Free Online Video Downloader Download // script.js document.get...
No comments:
Post a Comment