Создать Nodejs/Express API для подключения к React-Admin frontend Framework

реагировать-админ Это интерфейсная платформа для создания приложений администрирования, работающих в браузере, поверх API-интерфейсов REST/GraphQL с использованием ES6, React и Material Design. Ранее назывался admin-on-rest. Открытый исходный код и поддерживается marmelab.

Я пытаюсь создать и настроить Rest API (бэкенд) с помощью Nodejs/Express, я хочу знать, как настроить запросы и конечные точки в моем экспресс-API.

const express = require('express')
const app = express()
const bodyParser = require('body-parser');
const cors = require('cors');
const port = 80;
app.use(express.json());
app.use(function(req, res, next) {
  res.header("Access-Control-Allow-Origin", "*");
  res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
  next();
});
app.get('/', (req, res) => {
  return res.send('Received a GET HTTP method');
});
app.post('/', (req, res) => {
  return res.send('Received a POST HTTP method');
});
app.put('/', (req, res) => {
  return res.send('Received a PUT HTTP method');
});
app.delete('/', (req, res) => {
  return res.send('Received a DELETE HTTP method');
});
app.listen(port, () =>
  console.info(`Example app listening on port ${port}!`),
);

Можете ли вы добавить больше информации о том, что вы хотели бы сделать, какая у вас база данных и так далее? Или проблема заключается только в создании маршрутизатора для вашего приложения? Может быть, вы можете указать, к каким ресурсам вы обращаетесь с помощью API...

l2ysho 02.07.2019 18:58

моя база данных — Postgresql, а мой сервер — NodeJs/express, и я хочу создать полностью застрявшее веб-приложение с интерфейсом реагировать-админ

mariem 03.07.2019 17:38
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
2
3 177
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Это зависит от того, какой поставщик данных реакции-администратора вы используете. Поставщики данных работают как адаптер между react-admin и конкретным API, который вы используете. Для react-admin не существует «стандартной» спецификации API.

Существует пример ра-данные-простой отдых, который может удовлетворить ваши потребности, если вы действительно хотите написать свой собственный API с нуля в Express.

Лучшее решение может состоять в том, чтобы использовать что-то вроде Перья и перья-postgresql для вашего API, а затем использовать существующий поставщик данных ра-данные-перья для подключения react-admin к Feathers.

Большое спасибо за вашу помощь @Nick Nelson, я думал, что должен создать Отдых Cient, а не Поставщик данных, в чем разница между ними?

mariem 04.07.2019 10:53

Ссылка marmelab.com/admin-on-rest/RestClients.html предназначена для администратора в состоянии покоя. admin-on-rest был переименован в react-admin в версии 2. Rest Client и Data Provider в этом контексте в основном одно и то же. Единственная разница в том, что Rest Client предназначен для администратора в состоянии покоя, а Data Provider — для реагирования на действия администратора. Я бы посоветовал держаться подальше от документации admin-on-rest при работе с react-admin. Между ними есть существенные различия, и смешение документации может привести к путанице.

Nick Nelson 08.07.2019 01:42

Здравствуйте @nick, я все еще не понимаю, как заставить этот проект работать правильно. На самом деле я хочу создать с нуля сервер NodeJs/Express с базой данных Postgres, но кажется, что мне нужно создать DataProvider... и у меня есть понятия не имею, как это сделать... есть ли какие-нибудь примеры проекта с полным стеком с реактивным администратором, которые могут мне помочь... потому что я не могу найти такой проект!!

mariem 08.07.2019 20:15

Вы не имеют для создания DataProvider. Вы можете написать API, который соответствует стандартам, ожидаемым существующим поставщиком данных, например ra-data-json-сервер или ра-данные-простой отдых.

Nick Nelson 15.07.2019 04:20

Я бы посоветовал вам начать с учебник по реакции администратора, в котором показано, как настроить простой проект react-admin с использованием поставщика данных ra-data-simple-rest и существующего API, а затем просмотреть руководство по написанию API с помощью Экспресс как это. Выполнение обоих из них должно дать вам все необходимое, чтобы затем объединить их, чтобы ваше приложение для реагирования на администрирование подключалось к вашему Express API.

Nick Nelson 15.07.2019 04:31
Ответ принят как подходящий

ЭТО ПРОЕКТ ИДЕАЛЬНО ОТВЕЧАЕТ НА МОЙ ВОПРОС (за исключением того, что он использует mongodb). Спасибо Михалак111

Другие вопросы по теме