Статьи

Получите Поддельный REST API, Работающий и Использующий json-сервер

В этом руководстве вы узнаете, как начать настройку и использование поддельного сервера REST API с использованием json-сервера , который можно использовать при разработке мобильных или веб-приложений. В этом руководстве предполагается, что у вас есть базовые знания о запросах JSON и HTTP.

REST расшифровывается как представительский государственный трансферт. Это архитектурный стиль для разработки связанных приложений. Он использует простой HTTP, чтобы сделать возможной связь между машинами. Таким образом, вместо использования URL для манипулирования некоторой пользовательской информацией, REST отправляет HTTP-запрос, такой как GET, POST, DELETE и т. Д., На URL для манипулирования данными.

Например, вместо выполнения запроса GET к URL-адресу, например /deleteuser?id=10 , запрос будет выглядеть как DELETE /user/10 .

API REST формируют серверную часть для мобильных и веб-приложений. При разработке приложений иногда у вас не будет готовых REST API для использования в целях разработки. Чтобы увидеть мобильное или веб-приложение в действии, нам нужен сервер, который добавляет некоторые фиктивные данные JSON.

Вот тогда-то и появляется фальшивый REST API. json-server обеспечивает функциональность для установки поддельного REST API-сервера с минимальными усилиями.

Чтобы начать использовать json-server , установите пакет с помощью Node Package Manager (npm).

1
npm install -g json-server

Создайте фиктивный файл JSON с некоторыми данными в соответствии с вашими требованиями. Например, мне нужны некоторые данные JSON с пользовательской информацией, такой как id, имя, местоположение и т. Д. Поэтому я создам файл с именем info.json со следующей информацией JSON:

01
02
03
04
05
06
07
08
09
10
11
{
    «users»: [{
        «id»: 1,
        «name»: «roy»,
        «location»: «india»
    }, {
        «id»: 2,
        «name»: «sam»,
        «location»: «wales»
    }]
}

Из терминала запустите сервер json с info.json качестве источника данных, и у вас должен быть REST API, работающий по адресу http: // localhost: 3000 .

1
json-server info.json

Поскольку наш поддельный REST API-сервер запущен и работает, давайте посмотрим, как получить доступ к REST API с помощью клиента. Я использую REST-клиент Postman для выполнения вызовов API.

Давайте начнем с запроса GET к URL-адресу REST. Внутри файла json мы определили конечных users которые содержат информацию о пользователях. При выполнении запроса GET к URL-адресу http: // localhost: 3000 / users , он должен отображать существующие данные.

01
02
03
04
05
06
07
08
09
10
11
12
[
  {
    «id»: 1,
    «name»: «roy»,
    «location»: «india»
  },
  {
    «id»: 2,
    «name»: «sam»,
    «location»: «wales»
  }
]

Чтобы добавить новые данные в существующие данные, мы сделаем POST запрос к URL-адресу http: // localhost: 3000 / users . Вот как будет выглядеть запрос POST :

POST запрос

Попробуйте выполнить запрос GET и у вас должны быть вновь добавленные данные в файле info.json .

01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
[
  {
    «id»: 1,
    «name»: «roy»,
    «location»: «india»
  },
  {
    «id»: 2,
    «name»: «sam»,
    «location»: «wales»
  },
  {
    «name»: «ii»,
    «location»: «la»,
    «id»: 7
  },
  {
    «name»: «Shona»,
    «location»: «LA»,
    «id»: 8
  },
  {
    «name»: «Shona»,
    «location»: «LA»,
    «id»: 9
  }
]

Чтобы удалить запись из данных json-server , необходимо отправить запрос DELETE на конечную точку API с идентификатором пользователя. Например, чтобы удалить пользователя с идентификатором 1, необходимо отправить запрос DELETE на конечную точку http: // localhost: 3000 / users / 1 . Как только он будет удален, попробуйте выполнить запрос GET , и пользователь с идентификатором 1 не должен быть в возвращенном JSON.

Чтобы обновить существующую запись, вам необходимо отправить запрос PATCH с подробностями, которые необходимо обновить для этой конкретной записи. Например, чтобы обновить данные для пользователя с идентификатором 2, мы отправим запрос PATCH на URL-адрес http: // localhost: 3000 / users / 2, как показано ниже:

Запрос патча

Используя API REST json-server , вы можете осуществлять поиск в данных, чтобы найти данные на основе определенных критериев. Например, чтобы найти пользователей с определенным именем, необходимо отправить запрос GET на URL REST API, как показано ниже:

Отправка запроса GET на URL REST API

Как видно на изображении выше, отправка запроса GET по URL-адресу http: // localhost: 3000 / users? Name = Shona вернет пользователей с именем Shona . Точно так же, чтобы искать пользователей с любыми другими полями, вам нужно добавить это поле в строку запроса.

Чтобы выполнить полнотекстовый поиск по конечной точке API REST, необходимо добавить строку поиска вместе с параметром q в конечную точку. Например, для поиска пользователей с информацией, содержащей строку поиска s , запрос должен выглядеть следующим образом:

Полнотекстовый поиск в JSON-сервере REST API

При отображении разбитой на страницы сетки данных потребуется извлечь некоторые данные на основе нумерации страниц. В таких сценариях json-server предоставляет функциональные возможности для разбивки на страницы данных JSON. По умолчанию количество данных, возвращаемых с json-server равно 10. Мы можем явно определить это ограничение с _limit параметра _limit .

1
http://localhost:3000/users?_limit=5

Запрос GET на вышеуказанный URL вернет пять записей. Теперь, чтобы разбить данные на страницы, нам нужно добавить еще один параметр _page в URL. _page определяет страницу, которую нужно получить при возврате данных.

1
http://localhost:3000/users?_limit=5&_page=2

Запрос GET на указанный выше URL вернет вторую страницу набора данных с пятью записями на страницу. Изменяя переменную _page , мы можем получить нужные записи страницы.

json-server обеспечивает функциональность для сортировки полученных данных. Мы можем отсортировать данные, указав имя столбца, который должен быть отсортирован, и порядок, в котором данные должны быть отсортированы. По умолчанию данные сортируются в порядке возрастания. Мы можем предоставить имя столбца в URL-адресе конечной точки, используя ключевое слово _sort и определить порядок, используя ключевое слово _order . Вот пример URL:

1
http://localhost:3000/users?_sort=id&_order=DESC

Приведенный выше URL будет сортировать данные на основе Id столбца, и он будет отсортирован в порядке убывания.

json-server также предоставляет функциональность для поддержки операторов, таких как поиск записи с Id в диапазоне между двумя значениями или записи, соответствующей определенному регулярному выражению.

Для нахождения записи в определенном диапазоне мы можем использовать операторы _gte и _lte . Например, чтобы найти пользователей с Id больше 1 и меньше 2, сделайте запрос GET на URL http: // localhost: 3000 / users? Id_gte = 1 & id_lte = 2, как показано ниже:

Обработка меньше, чем операторы

Если мы хотим искать имена, начинающиеся с определенной буквы, мы можем использовать регулярные выражения. Например, для поиска имен, начинающихся с букв sa , мы будем использовать оператор _like и сделаем GET запрос к URL-адресу http: // localhost: 3000 / users? Name_like = ^ sa .

Обработка регулярных выражений в операторах

В этом руководстве вы увидели, как использовать API-интерфейсы REST json-server для создания фиктивной базы данных для быстрого использования. Вы узнали, как начать использовать json-server и запросить URL-адрес для добавления, обновления, изменения и удаления данных. Вы видели, как разбивать на страницы, сортировать и искать фиктивные данные. Вы также видели, как использовать операторы для поиска записей с использованием регулярных выражений.

Вы использовали json-server или любой другой поддельный REST API-сервер для создания фиктивных данных? Как прошел ваш опыт? Дайте нам знать ваши мысли в комментариях ниже.