Рубрики
Без рубрики

Запуск макета JSON или GraphQL API -сервер за секунды

Много раз мы просто хотим быстро разработать прототип пользовательского интерфейса без слишком большого количества зависимостей …. Tagged with javascript, webdev.

Много раз мы просто хотим быстро разработать прототип пользовательского интерфейса без слишком большого количества зависимостей.

Но реальность такова, что для использования в реальном мире компонент нам часто нужно получить некоторые данные и иметь пользовательский интерфейс, а затем что-то отображать.

Тогда мы тоже:

  • Напишите немного быстрого бэкэнд -кода (с такими бэкэнд -структурами, такими как Express, KOA, Happy и т. Д.), Чтобы иметь пару API, маршруты, чтобы вернуть некоторые фиктивные данные или данные из базы данных.
  • Изучите и используйте некоторые фальшивые услуги API из Интернета.

Для варианта 1 – Напишите код бэкэнда. Мы должны потратить много времени, чтобы создать API -интерфейсы с:

  • Фиктивные данные, поддержка страниц.
  • Совершенные, правильные интерфейсы API.
  • Обычно это приведет к отвлечению от первоначальной идеи, и у нас будет меньше времени для реализации пользовательского интерфейса (это может быть причиной того, что мы продолжаем отказываться от проектов домашних животных) время от времени)

Для варианта 2 – Используйте фальшивый сервис API из Интернета:

  • Требует подключения к Интернету.
  • Полагается на их стабильность, безопасность. (Это безопасно использовать? Это отслеживает ваши запросы?)
  • Это может ввести нарушающие изменения, которые вы должны соответствующим образом настроить свой код.
  • Добавление зависимости к вашему приложению – это будет еще несколько лет спустя?

Но есть лучший способ сделать это …

Что если у нас будет простой способ запустить наши фальшивые API на местном уровне с помощью фиктивных данных, готовых для использования пользовательским интерфейсом?

Давайте рассмотрим инструмент командной строки под названием API сейчас! (API-now) Анкет Просто набирая $ npx api-now В терминале он запустит сервер API для обслуживания данных JSON, JS -файла, GraphQL или Faker с поддержкой HTTPS!

Это экономит нам много времени, когда мы возились в бэкэнд -земле, чтобы мы могли сосредоточиться на нашем прекрасном прототипе пользовательского интерфейса, пока у нас не будет времени, чтобы инвестировать в настройку бэкэнд.

API-Now Есть много полезных функций, таких как:

  • Наборы данных по умолчанию вне коробки: Todos, пользователи, сообщения, комментарии (с помощью Faker).
  • Поддержка HTTPS (с ключами, файлы CERT).
  • Может взять файл .json или .js.
  • Конечная точка GraphQL для обслуживания данных Faker:/graphql
  • Может служить статическому каталогу (например,/dist,/public и т. Д.) – Это может заменить http-server, или Simplehttpserver.
  • API -поддержка страдания (_page, _limit).
  • /echo маршрут, чтобы ответить параметры обратно как JSON.
  • /маршрут файла для обслуживания любого типа файла (включая изображения).
  • /rougin route (post), чтобы ответить фиктивным токеном JWT (с помощью JSonWebtoken).
  • /todos маршрут, чтобы вернуть список элементов TODO (следуйте спецификациям TOMODVC).
  • /image/random для обслуживания случайного файла изображения из каталога.
  • /avatar/random, чтобы служить случайному аватарскому изображению.
  • /природа/случайная, чтобы служить случайному образу природы.

Чтобы попробовать это, подготовьте свои Nodejs (кто нет?) И запустите эту командную строку $ npx api-now Анкет Вот и все! Вы можете попробовать это сейчас (из другого терминала):

$ curl http://localhost:3003/todos
$ curl http://localhost:3003/users?_page=1&_limit=5    (others: /posts /comments)

Other Useful Routes:
$ curl http://localhost:3003/echo?any=value
$ curl http://localhost:3003/file?path=YourFilePath
$ curl http://localhost:3003/image/random?path=YourDirPath
$ curl http://localhost:3003/avatar/random
$ curl http://localhost:3003/nature/random
$ curl -X POST http://localhost:3003/login -H 'Content-Type: application/json' -d '{"username": "test"}'

Open GraphQL Query Page:
open http://localhost:3003/graphql

$ curl 'http://localhost:3003/graphql' -H 'Content-Type: application/json' --data-binary '{"query":"{ todos { title } }"}'

Ниже приведен образец проекта, в котором используется API-Now для ui coalerplate: https://newssup.com (используется при разработке этого сайта) https://github.com/ngduc/parcelui

Теперь у вас есть больше времени, чтобы повеселиться с вашим потрясающим проектом пользовательского интерфейса!:)

Ссылка на сайт: https://github.com/ngduc/api-now

Оригинал: “https://dev.to/ngduc/running-a-mock-api-server-in-seconds-2j7”