Я понимаю основную суть асинхронности: вещи не выполняются последовательно. И я понимаю, что в этом есть что-то очень мощное... якобы. Но для жизни я не могу окутать голову в код. Давайте взглянем на async Node.JS-код, который я ПИСЬЕТ... но не понимаю.
function newuser(response, postData) {
console.log("Request handler 'newuser' was called.");
var body = '<html>' +
'<head>' +
'<meta http-equiv="Content-Type" content="text/html; ' +
'charset=UTF-8" />' +
'</head>' +
'<body>' +
'<form action=" /thanks" method="post">' +
'<h1> First Name </h1>' +
'<textarea name="text" rows="1" cols="20"></textarea>' +
'<h1> Last Name </h1>' +
'<textarea name="text" rows="1" cols="20"></textarea>' +
'<h1> Email </h1>' +
'<textarea name="text" rows="1" cols="20"></textarea>' +
'<input type="submit" value="Submit text" />' +
'</body>' +
'</html>';
response.writeHead(200, { "Content-Type": "text/html" });
response.write(body);
response.end();
}
Откуда появился ответ? PostData? Почему я не могу определить переменную в этом "обратном вызове", а затем использовать ее за пределами обратного вызова? Есть ли способ, чтобы несколько вещей были последовательными, а затем остальная часть программы async?