import { get } from "request";
import { writeFile } from "fs";
get(
"https://en.wikipedia.org/wiki/Async/await",
(requestErr, response, body) => {
if (requestErr) {
console.error(requestErr);
} else {
writeFile("async.js", body, writeErr => {
if (writeErr) {
console.error(writeErr);
} else {
console.log("File written");
}
});
}
}
);
根据我的理解,writeFile函数需要异步启动,因为它需要等待get函数首先完成(获取URL)。 然而,我真的不确定如何重构它。
找这样的东西?
const axios = require("axios");
const fs = require("fs");
const fetchAndWrite = async () => {
try {
const { data } = await axios.get(
"https://en.wikipedia.org/wiki/Async/await"
);
return fs.writeFileSync("/some_directory/async-await.html", data);
} catch (error) {
// something bad happened...
}
};
fetchAndWrite();