В сегодняшней статье я покажу вам, как вы можете настроить простой сервер node js и разместить его в сети с помощью Heroku, а далее (в следующих статьях) мы можем изучить REST для обслуживания наших простых данных.

Я бы развернул сервер Typescript, а не ванильный javascript, чтобы мы могли использовать все вкусные возможности современных js, а для тех, кто не знает, что такое Typescripts, короче его javascript с типами (вы можете принять как типы данных / возврат types), что делает его безопасным и обеспечивает статический анализ кода, улучшая качество вашего кода, а дополнительным бонусом является то, что он очень похож на Java, поэтому он чувствует себя как дома.

Мотив.

  • Простой сервер node-js.
  • С поддержкой машинописного текста.
  • Развернут на Heroku.

Прежде чем мы запачкаем руки, давайте узнаем предварительное условие.

P.S Я использую дистрибутив ubuntu под названием Elementary OS.

Шаг 1. Создание корневого каталога проекта

откройте свой терминал, перейдите в любой каталог, затем mkdir demo-heroku-node-ts

Шаг 2. Инициализируйте свой каталог как проект узла.

откройте корневой каталог, cd demo-heroku-node-ts затем, npm init он задаст вам несколько основных вопросов, таких как название вашего проекта, точка входа и другие вопросы. вы можете ввести что угодно, потому что мы можем посетить его в любое время из package.json.

Шаг 3. Установите необходимую зависимость с помощью NPM.

npm i @types/express @types/node express nodemon ts-node typescript

Таким образом, эти команды устанавливают наиболее распространенные пакеты npm, используемые для разработки,

  • Express используется для упрощения REST API, а также настройка сервера - очень приятное занятие для разработчиков по сравнению с обычными методами Nodejs.
  • Nodemon поддерживает работу сервера и меняет местами последний код, поэтому вам не нужно перезапускать сервер каждый раз, когда вы обновляете новый код, это только для зависимости от разработки на данный момент я сосредоточен на его развертывании позже, мы можем оптимизировать для другие вещи.
  • ts-node напрямую запускает файл узла .ts.
  • машинописный текст для поддержки типов скриптов в javascript.

Все с @types - это типы машинописного текста для поддержки возвращаемого типа этой библиотеки.

Шаг 4. Настройка машинописного текста

В терминале запустите команду в корневом каталоге, tsc --init будет создан новый файл с именем tsconfg.json, вы можете напрямую заменить его моим, комментариев будет достаточно, чтобы объяснить их использование.

Поздравляю ... ваш тип-скрипт теперь готов к использованию на сервере nodejs! давайте сделаем наш серверный код.

Шаг 5. Настройка сервера

теперь откройте ваш package.json и сделайте объект скрипта похожим на приведенный ниже фрагмент.

отсюда вы могли догадаться, что наш серверный скрипт будет находиться в src / config / server.ts.

поэтому создайте структуру каталогов, аналогичную этой, в терминале или с помощью VS-кода, создайте каталоги, mkdir -p src/config/ создайте файл с именем server.ts, используя vs-код или терминал, touch server.ts // creates file затем code server.ts // open in vs-code, сделайте его похожим на приведенный ниже:

Вы можете протестировать сервер, разместив его на локальном хостинге, используя следующую команду в терминалеnpm run dev, затем в Chrome откройте http: // localhost: 5000 /, если вы видите сообщение, значит, ваш сервер настроен правильно.

Шаг 6. Развертывание на Heroku.

Настройка точки доступа к серверу Heroku (можно сказать SSH)

мини-шаг 1. Установите Heroku CLI

в терминале runsudo snap install --classic heroku,, если у вас возникнут проблемы с его установкой, обратитесь к https://devcenter.heroku.com/articles/heroku-cli, чтобы узнать о других способах его установки. проверьте, успешно ли установлен Heroku, используя commandheroku --version // should retrun version

мини-шаг 2. войдите в Heroku

с помощью команды в терминалеheroku login откроется вкладка в браузере, которая запрашивает учетные данные для входа, после чего вы можете закрыть вкладку, и вы войдете в Heroku CLI.

мини-шаг 3. Создайте приложение heroku

команда execute heroku create создаст новое динамическое приложение (приложение) на активном и запущенном сервере Heroku. его вывод даст вам ссылку на созданный URL-адрес, также вы можете открыть его из терминала, удерживая клавишу Control, щелкнув ссылку или скопировав и вставив ее в браузер.

пример: Creating app... done, ⬢ sleepy-meadow-81798 https://sleepy-meadow-81798.herokuapp.com/ | https://git.heroku.com/sleepy-meadow-81798.git

из этого примера выходных данных URL-адрес размещенного сервера --https://sleepy-meadow-81798.herokuapp.com/

мини-шаг 4. Создайте Procfile для Heroku

на корневом уровне создайте файл с именем profile без какого-либо расширения внутри него, добавьте строкуweb:ts-node/src/config/server.ts и сохраните файл.

мини-шаг 5. инициализация вашего проекта в репозиторий git

из корневого уровня приложения выполните эту команду, в терминале выполните команды:

мини-шаг 6. Отправка кода в Heroku

теперь у вас есть два способа отправить код на сервер Heroku: вы можете добавить источник в репозиторий git, используя ссылку git из вывода терминала команды Heroku create, и вы, естественно, можете отправить код с помощью git.git push heroku master после успешного нажатия ваш сервер будет жить со своим кодом.

мы не углублялись в TypeScript Nodejs и все другие вещи, связанные с кодированием REST, в этом руководстве мы просто имеем дело с настройкой хостинга, в следующей статье мы сосредоточимся больше на коде!

А до тех пор счастливого взлома!

P.s. загляните к моему блогеру, может быть, вы откроете для себя что-то новое!