Регистрация пользователя перо-аутентификация с помощью паспорта-facebook-токена - PullRequest
0 голосов
/ 01 февраля 2019

Я пытаюсь разрешить пользователям подписываться на мою услугу через "логин через facebook".

Mobile app user signup via facebook login

Я уже сделал стрелку 1-2.Мне нужно сделать стрелки 3-6.Я сделал минимальный пример Feathersjs на https://github.com/morenoh149/feathers-chat-facebook-signup-api

У меня, похоже, проблемы с получением перьевой аутентификации и паспорта-facebook-токена, чтобы сгенерировать объект User и зарегистрировать их.Я внимательно изучил паспорт-фейсбук-токен. Этот ответ объясняет, что при обратном вызове passport-facebook-token вы должны создать объект User.Как мне сделать это с помощью аутентификации перьев?

Когда я предоставляю токен в теле

curl localhost:3030/authentication \
  --data-binary '{\
    "strategy": "facebook-token", \
    "access_token": "<phone token>" \
  }'

, я получаю

{"name":"NotAuthenticated",
"message":"You should provide access_token","code":401,
"className":"not-authenticated",
"data":{"message":"You should provide access_token"}

, когда передаю токен какзаголовок

curl localhost:3030/authentication \
  -X POST \
  -H "Authorization: Bearer <access token>"

Я получаю ошибку

{"name":"GeneralError",
"message":"Cannot read property 'toLowerCase' of undefined",
"code":500,"className":"general-error","data":{},"errors":{}}

1 Ответ

0 голосов
/ 05 февраля 2019

Итак, я скачал и запустил репозиторий, я использовал VSCode для запуска приложения и установки точек останова.Я создал точку останова в хуках before create для пользователей.

Проблема здесь в том, что ожидается, что gravator hook будет иметь адрес электронной почты context.data, но на самом деле он встроен в ответ Facebook.Вам нужно будет посмотреть, как извлечь письмо из этих данных, чтобы вы могли создать граватар или просто удалить граватарный хук.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...