Виталий, мерси
В смысле вот так "можно вызвать как промис"?
async function foo() {
var x;
await x = 25;
return x;
}
foo().then( x => console.log(x)); // должно бы вывести 25
Я почему спрашиваю? Не могу до нового года переустанавливать Ноду (с 6-й на 8-ю), и я бы всё это давно методом научного тыка освоил - но тех.средства не позволяют. Поэтому я поглядываю тут связанные с этим вопросы - и пытаюсь пока "разобраться в уме".
Александр Крымов, Понятно. Что ничего не понятно. Какие блять вебсокеты, если по http запрос не запрашивается? Ну ладно, всё с ними понятно.
Перенаправление одной строчкой (см. выше).
Александр, А, ну и я тут подсмотрел у себя в логи базы (Монги), когда насколько запросов к разным коллекциям. Чиста механика проста - сколько запросов, столько и коннектов.
Александр, Ну да, обычный "камень преткновения" в самом начале. "В конце кода" - не значит "после всего". Вот перенесите коннект к базе сразу перед db.query - скорее всего, вы получите пустой массив в консоли (ну, это я предполагаю). Потому что метод query выполнится, а вот колбек с error и result в аргументах - не успеет выполниться до db.end(), ответ от базы прийти не успеет.
Я и с MongoDB когда-то вот так же недоумевал: "Что такое? Никаких ошибок - и в ответе пусто!" (хе-хе)
Александр, А я, честно сказать, не знаю, как это делать с mysql. Но какой-то способ должен быть.
В этом случае сам вопрос будет даже и без конкретной базы данных (т.е. с любой): надо получить данные из двух коллекций (в вашем случае таблиц), а res. (ответ) может быть только один, и в него нужно передать данные и оттуда, и оттуда. Для этого и используют разные способы "борьбы с асинхронностью" - промисы, а до них библиотека async.
Так что, это, вообще, "принципиальный" вопрос.
Но как это ещё и конкретно с mysql решается - я не знаю.
Александр Крымов, Ну так, по этому "набору букав" всё и должно открываться (с двоеточием и портом после букав). Если нет, так вы у них спросите - пусть объяснят. И если заработает, и нам потом объясните - то будет вам плюс в карму.
Александр Крымов, Да может, и здесь всё нормально. Что они вам дали? какой-то адрес или что? Мне вот самому интересно. Я первый раз увидел "виртуальный хостинг" с поддержкой Node.js - как его юзать-то вообще?
Александр Крымов, Не, но я же ничего не знаю. Я прочитал выше, что это не VPS, и я видел у них на сайте, что есть просто "хостинг" с "поддержкой" Node.js. Но вот я с таким дело не имел и не знаю, как там оно устроено. Как вы заходите, что пишете в адресной строке? там вообще IP есть? А запускаете вы из терминала? А система какая?...
У вас там, я видел, morgan заряжен - если бы что-то было не так с приложением, то он бы всё в консоль написал, а раз не пишет - значит, все загружается и о-кей. Может, это вопрос-то к их, хостинга, "группе поддержки".
Юрий, Node.js не нуждается в том, чтобы Nginx "снимал с неё нагрузку". Если я напишу в конфиге Nginx, чтобы он кешировал статику, то вся статика будет просто кешироваться дважды. Зачем?
Нода в режиме production сама кеширует не только статику, но и шаблоны.
Александр Крымов, Порт обычно перенаправляют. Это просто, на самом деле, разными способами - proxy или просто командой в Линуксе. Потом разберётесь.
А почему приложение "нельзя" запускать на 80-м - объяснения этому я никогда не встречал: все долдонять только, как попугаи, что "не рекомендуется", "не безопасно" и т.п. ерунду. Думаю, просто, на сервере может быть не одно приложение, а если их хотя бы два - они уже не могут слушать один и тот же порт. Другого у меня нет объяснения.
Есть директива iptables - всего одной строчкой в терминале любой открытый порт перенаправляется на любой.
В смысле вот так "можно вызвать как промис"?
Я почему спрашиваю? Не могу до нового года переустанавливать Ноду (с 6-й на 8-ю), и я бы всё это давно методом научного тыка освоил - но тех.средства не позволяют. Поэтому я поглядываю тут связанные с этим вопросы - и пытаюсь пока "разобраться в уме".