Служить JSON по определенному маршруту
Пока сервер HTML обслуживает (как вы уже догадались!) HTML, API обслуживает данные. API REST (REpresentational State Transfer) позволяет осуществлять простой обмен данными без необходимости для клиентов знать какие-либо подробности о сервере. Клиенту нужно только знать, где находится ресурс (URL) и какое действие он хочет с ним выполнить (глагол). Глагол GET используется, когда вы извлекаете некоторую информацию, ничего не изменяя. В наши дни предпочтительным форматом данных для перемещения информации по сети является JSON. Проще говоря, JSON - это удобный способ представления объекта JavaScript в виде строки, чтобы его можно было легко передавать.
Давайте создадим простой API, создав маршрут, который отвечает JSON по пути /json
. Вы можете сделать это, как обычно, с помощью app.get()
. Внутри обработчика маршрута используйте метод res.json()
, передавая объект в качестве аргумента. Этот метод закрывает цикл запрос-ответ, возвращая данные. За кулисами он преобразует действительный объект JavaScript в строку, затем устанавливает соответствующие заголовки, чтобы сообщить браузеру, что вы обслуживаете JSON, и отправляет данные обратно. Допустимый объект имеет обычную структуру {key: data}
. Данные могут содержать число, строку, вложенный объект или массив. Данные также могут быть переменной или результатом вызова функции; в этом случае он будет оценен перед преобразованием в строку.
Подайте объект {"message": "Hello json"}
как ответ в формате JSON на запросы GET к маршруту /json
. Затем укажите ваш браузер на ваш-app-url / json, вы должны увидеть сообщение на экране.
Serve the object {"message": "Hello json"}
as a response, in JSON format, to GET requests to the /json
route. Then point your browser to your-app-url/json
, you should see the message on the screen.