Как я могу сделать локальный вызов на сервере в службу аутентификации? - PullRequest
0 голосов
/ 24 марта 2019

У меня есть работающий сервер FeathersJS, работающий со службой аутентификации.

Я могу сделать POST из клиента (браузера) следующим образом:

http://localhost:3030/authentication/

POST BODY:

{"стратегии": "локальный", "электронная почта": "myEmail", "пароль": "myPassword"}

Это работает и возвращаетвалидирован accessToken.

Я пытаюсь реализовать GraphQL (сервер Apollo v.2).Мне удалось заставить его работать, и я могу вызывать любые службы Feathers из решателя GraphQL.

Проблема в том, что мне нужно вызывать службу аутентификации из кода на стороне сервера, а не из клиента.

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

Я могу получить объект службы:

const authService = app.service ('аутентификация');

Могу ли я просто вызвать некоторую функцию для получения проверенного accessToken, например:

return authService.someFunction ({"стратегии": "локальный", "электронная почта": "torodom.canada@gmail.com", "пароль": "пароль"});

Доступно только 2 метода

создание и удаление.

Create не проверяет - он просто генерирует JWT на основе параметров.

Может кто-нибудь дать мне помощь или идею по этому поводу?Цени любую помощь.

1 Ответ

1 голос
/ 24 марта 2019

Используемый метод - стандартная служба Feathers create метод :

return authService.create({
  "strategy": "local",
  "email": "torodom.canada@gmail.com",
  "password": "password"
});

Подробнее об услуге Feathers можно узнать из Основы ислужба аутентификации в документации API сервера аутентификации .

...