Skip to content

Commit ba9a60b

Browse files
feat(login): opção de desabilitar 'Bearer' do retorno de '/login'
A opção de desabilitar o 'Bearer' da chave 'authorization' da rota '/login' vai atender aos usuários de ferramentas que já insere por padrão 'Bearer' no header, como Postman.
1 parent 5724d33 commit ba9a60b

File tree

4 files changed

+22
-10
lines changed

4 files changed

+22
-10
lines changed

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ npx serverest -h
5858

5959
<details><summary><i>Abra para ver imagem do terminal com os comandos de configuração</i></summary>
6060

61-
![Informação de opções e exemplos fornecidos no terminal](https://user-images.githubusercontent.com/29241659/83976854-288b3900-a8d3-11ea-9fdf-97ba96648823.png)
61+
![Informação de opções e exemplos fornecidos no terminal](https://user-images.githubusercontent.com/29241659/84222328-b15dcc80-aaad-11ea-8165-d3ce52672ee7.png)
6262

6363
</details>
6464

docs/index.html

Lines changed: 12 additions & 5 deletions
Large diffs are not rendered by default.

src/controllers/login-controller.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
11
'use strict'
22

33
const authService = require('../services/auth-service')
4-
const usuariosService = require('../services/usuarios-service')
54
const constant = require('../utils/constants')
5+
const { conf } = require('../utils/conf')
6+
const usuariosService = require('../services/usuarios-service')
67

78
exports.post = async (req, res) => {
89
try {
910
if (await usuariosService.existeUsuario(req.body)) {
1011
const token = authService.createToken(req.body)
11-
return res.status(200).send({ message: constant.LOGIN_SUCESS, authorization: `Bearer ${token}` })
12+
const authorization = conf.semBearer ? token : `Bearer ${token}`
13+
return res.status(200).send({ message: constant.LOGIN_SUCESS, authorization })
1214
}
1315
res.status(401).send({ message: constant.LOGIN_FAIL })
1416
} catch (error) {

src/server.js

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -14,19 +14,21 @@ const argv = require('yargs')
1414
porta: conf.porta,
1515
timeout: conf.tokenTimeout
1616
})
17-
.boolean(['nodoc', 'nosec'])
17+
.boolean(['nobearer', 'nodoc', 'nosec'])
1818
.number(['timeout', 'porta'])
1919
.alias('p', 'porta')
2020
.alias('t', 'timeout')
2121
.alias('d', 'nodoc')
22+
.alias('b', 'nobearer')
2223
.alias('s', 'nosec')
2324
.alias('h', 'help')
2425
.alias('v', 'version')
2526
.usage('\nAjuda do ServeRest')
2627
.describe('p', 'Porta que será utilizada (default: 3000)')
2728
.describe('t', 'Timeout da autenticação em segundos (default: 1)')
28-
.describe('s', 'Desabilitar os headers de segurança na resposta')
2929
.describe('d', 'Desabilitar o início automático da documentação')
30+
.describe('b', 'Não retornar "Bearer" no authorization de /login')
31+
.describe('s', 'Desabilitar os headers de segurança na resposta')
3032
.example('npx serverest --nodoc -t 20', 'Documentação não abrirá e token de autenticação gerado no login terá 20 segundos de duração')
3133
.example('npx serverest -p 3500', 'Em execução na porta 3500')
3234
.help('h')
@@ -37,6 +39,7 @@ const argv = require('yargs')
3739

3840
conf.tokenTimeout = argv.timeout
3941
conf.utilizarHeaderDeSeguranca = !argv.nosec
42+
conf.semBearer = argv.nobearer
4043
const DEFAULT_PORT = 3000
4144

4245
// app tem que ser importado após o conf.utilizarHeaderDeSeguranca para que ele funcione corretamente

0 commit comments

Comments
 (0)