С Новым годом! Форум программистов, компьютерный форум, киберфорум
REST API
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.75/4: Рейтинг темы: голосов - 4, средняя оценка - 4.75
207 / 23 / 6
Регистрация: 12.06.2012
Сообщений: 235

Объясните детальнее схему работы сервера Restful API

08.01.2018, 02:21. Показов 845. Ответов 4

Студворк — интернет-сервис помощи студентам
Привет!

К примеру,
  1. я сделал файл server.js, в котором прописал фактически стандартный запуск сервера:
    JavaScript
    1
    2
    3
    4
    5
    
    //Setting up server
     var server = app.listen(process.env.PORT || 3000, function () {
        var port = server.address().port;
        console.log("App now running on port", port);
     });
  2. подключил БД
  3. и написал парочку CRUD-операций
  4. при заходе на localhost настроил по умолчанию стартовать свой файл server.js

Какие вопросы:
1) получается, что сейчас любой пользователь, кто будет заходить на мой localhost будет вызывать запуск старта сервера заново и заново?
2) не возникнет ли в таком случае какие-то исключения или, наоборот, создастся куча копий, что приведёт к overflow самого сервера?
3) как обычно строится схема простого подобного сервиса? это нормально разве, что я настроил вызов файла server.js по умолчанию? Или этот файл должен лежать в труднодоступном месте?

Теоретически, я понимаю, что по логике мне надо запустить server.js локально и остальные пусть уже коннектятся к моему localhost. Но если что-то сбойнёт, то надо снова лезть на сервер и перезапускать файл, что явно нелогично. Должен быть другой план.

т.е. иными словами, мне надо чтобы при первом запуске сервера, автоматом запускался мой файл server.js, и создавался бы инстанс. После чего, пользователи спокойно могли бы работать с функциями API этого сервера, наподобие:
app.get, app.post, app.put, app.delete

П.С. в основном везде инфа про то, только как кодить файл сервера. А вот про разворачивание и использование во внешнем мире довольно скудно.

Спасибо,
С Рождеством всех!
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
08.01.2018, 02:21
Ответы с готовыми решениями:

Приложение на C++ для работы с API, подскажите/объясните принцип.
Здравствуйте! Требуется написать программу(для себя любимого :)) на C/C++ для работы с API http://www.reg.ru/reseller/API2-tech ...

RESTful API работа с actions
Всем привет, такой стоит вопрос, у меня есть YII2 и нужно разработать API которая будет отправлять ответ в своём формате. Я не могу...

Restful API + requests JSON
Ребят, доброго времени суток. В данное время я начал заниматься разработкой под Android. У меня есть проект, но я столкнулся с...

4
Coding is art
Эксперт JS
540 / 423 / 154
Регистрация: 04.09.2013
Сообщений: 1,066
08.01.2018, 04:51
что вы подрозумеваете под "localhost" ? как люди будут заходить туда и стартовать server.js ??
обычно это работает так:
вы выполняете команду node server.js и у вас поднимается сервер, затем люди могут заходить на него.
Посмотрите модуль pm2 который "навечно" запустит ваш сервер.
И через nginx можно сделать reverse proxy на него.
0
207 / 23 / 6
Регистрация: 12.06.2012
Сообщений: 235
08.01.2018, 15:51  [ТС]
Цитата Сообщение от muxahuk1214 Посмотреть сообщение
что вы подрозумеваете под "localhost" ? как люди будут заходить туда и стартовать server.js ??
в данном случае, подрузамевал машину в сети, с выделенным ip. не заостряйте внимания тут, может не так выразился.

Цитата Сообщение от muxahuk1214 Посмотреть сообщение
обычно это работает так:
вы выполняете команду node server.js и у вас поднимается сервер, затем люди могут заходить на него.
чтобы сделать такую команду, надо зайти удалённо на сервер и выполнить её. если что-то затупит, то снова надо подключаться удалённо и резетить. должен быть иной способ. Правильно ли класть файл server.js для запуска по умолчанию на хосте? Т.е. как только пользователь заходит на мой хост httр://mуdomen то сразу выполняется сценарий файла?

Цитата Сообщение от muxahuk1214 Посмотреть сообщение
Посмотрите модуль pm2 который "навечно" запустит ваш сервер.
И через nginx можно сделать reverse proxy на него.
это что-то никсовое наверное. я настраиваю на Windows-машине (iis).
0
Coding is art
Эксперт JS
540 / 423 / 154
Регистрация: 04.09.2013
Сообщений: 1,066
09.01.2018, 00:51
Нода работает не как пхп. Её запускают 1 раз и она весит в процессах и работает.
грубо говоря пользователь не сможет зайти на ваш хост т.к. не будет запущен server.js
pm2 модуль это нодовский модуль который работает на всех ОС.
(он делает перезагрузку вашей нод пликации автомтически, если он завис или сломался)

В server.js у вас будет что-то типо:
JavaScript
1
2
3
4
5
6
app.get('/', function(req, res) {
// эта функция будет выполнена когда зайдём на главную страницу
});
app.get('/test/', function(req, res) {
// эта функция будет выполнена когда зайдём на /test/ страницу
});
Сам файл должен уже быть запущен, иначе не отрботает нужная функция.
0
207 / 23 / 6
Регистрация: 12.06.2012
Сообщений: 235
09.01.2018, 08:02  [ТС]
Цитата Сообщение от muxahuk1214 Посмотреть сообщение
Сам файл должен уже быть запущен, иначе не отрботает нужная функция.
Всё запущено, и функции работают.
Сама конфигурация больше интересовала. Правильно ли было класть в рут сайта. Этого не могу понять. Ладно, работает и работает пока что.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
09.01.2018, 08:02
Помогаю со студенческими работами здесь

RestFul Api Отношение один ко многим
Всем доброго дня! Такой вопрос. У меня таблица Тест и Вопрос. У одного теста много вопросов (у таблицы вопрос храниться ID теста). Я сознаю...

Правильная архитектура Android приложения, использующего restful api
Добрый день! есть задача написать приложение. Главный функционал- отображение данных из БД. БД должна обновляться через указанный...

Что такое restful api и как его использовать
Кто знает что такое restful api и как его использовать в c#. Есть бд sqlite. Надо отправить запрос в виде Restful api. Например...

Объясните как работать с API
Всем привет! Есть интернет магазин, при оформлении заказа все последующие действия банально сводятся к отправке письма с заказом...

API с сервера
Всем добрый вечер! Я новичок! Помогите пожалуйста сделать пример вывода блюд по данному API на PHP 82.209.218.191:50050 User...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
Classic Notepad for Windows 11
Jel 10.01.2026
Old Classic Notepad for Windows 11 Приложение для Windows 11, позволяющее пользователям вернуть классическую версию текстового редактора «Блокнот» из Windows 10. Программа предоставляет более. . .
Почему дизайн решает?
Neotwalker 09.01.2026
В современном мире, где конкуренция за внимание потребителя достигла пика, дизайн становится мощным инструментом для успеха бренда. Это не просто красивый внешний вид продукта или сайта — это. . .
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru