@desco/social-auth

Login in social networks

Usage no npm install needed!

<script type="module">
  import descoSocialAuth from 'https://cdn.skypack.dev/@desco/social-auth';
</script>

README

@desco/social-auth

Pacote que permite login via Google (Backend).

Licença MIT Versão 1.1.1

⛏️ Parcialemnte pronto para uso 🚀

Veja outros projetos NPM aqui.

Veja outros projetos aqui.


📋 Tabela de conteúdos


✔️ Recursos

  • Google;
  • Facebook;
  • Twitter;
  • Instagram;
  • Linkedin;
  • Steam;

🛠️ Tecnologias

As seguintes tecnologias são utilizadas:


⚙️ Instalação

npm install --save @desco/social-auth

Note que será necessário ter o NPM instalado para o comando funcionar.


📦 Importação

Google

const SocialAuth = require('@desco/social-auth')

📚 Como Usar

Google

Iniciando

Iniciamos a API da Google passando como parâmetro um JSON com:

  • id - Id da API da Google;
  • key - Chave da API da Google;
  • callbackUrl - URL para onde a Google deve redirecionar o usário após o login;

Veja aqui como criar uma aplicação Google

const Google new SocialAuth.Google({
  id: googleId,
  key: googleKey,
  callbackUrl: 'http://my-domain.com:8080/google-cb/'
})

Recuperando URL de Login

Com a API Google iniciada, precisamos gerar uma URL de login da Google a qual deverá ser retornada para que o front-end redirecione o usuário.

Como parâmetr devemos passar um array contendo todos os escopos da Google que desejamos ter acesso com o login.

const url = Google.generateAuthUrl([ 'userinfo.email', 'userinfo.profile', ])

Note que somente o nome do escopo é necessário e não a URL inteira

Veja aqui uma lista de todos os escopos

Setando Credenciais

Após o usuário realizar o login, a Google irá redirecioná-lo devolta para a callbackUrl informada na inicialização da API.

Nesse redirecionamento será informado via querystring o parâmetro code que iremos utilizar para setar as credenciais do usuário na nossa API e receber o token de acesso.

const token = await Google.setCredentials(code)

Recuperando Informações do Usuário

Com as credenciais setadas, podemos recuperar os dados da conta Google do usuário:

const data = Google.userInfo()

Os dados retornados serão aqueles referentes aos escopos solicitados na geração de URL de login e que o usuário deverá ter permitido acesso.

Checando o Acesso

Com as credenciais setadas, também podemos verificar se o acesso ainda é valido e ativo:

const valid = Google.checkAccess()

Autor

Rafael A. R. Dias Email eu@diasrafael.com.br Linkedin @diasrafael Facebook @eudiasrafael GitHub Geral @descodifica GitHub NPM @desco-npm NPM @desco