Я действительно не знаю, что ты там делаешь, если честно. Используя экспресс и http.
Я бы рекомендовал использовать axios для GET-запроса в узле.
Если в urls.txt всего один URL, простой пример использования axios, который может решить вашу проблему:
const fs = require("fs");
const axios = require("axios");
const urls = "./urls.txt";
fs.readFile(urls, "utf8", (err, data) => {
axios.get(data).then(res => {
fs.writeFile("json.txt", JSON.stringify(res.data), err => {
if (!err) console.log("Written to file.");
});
});
});
Edit: кажется, вы хотите, чтобы это было вызвано HTTP-запросом Get
const express = require("express");
const fs = require("fs");
const axios = require("axios");
const app = express();
const urls = "./urls.txt";
app.get("/", (req, resp) => {
fs.readFile(urls, "utf8", (err, data) => {
axios.get(data).then(res => {
fs.writeFile("json.txt", JSON.stringify(res.data), err => {
if (!err) resp.send("Written to file.");
});
});
});
});
app.listen(3000, () => {
console.log("Listening for requests");
});