An open API service indexing awesome lists of open source software.

https://github.com/rustkas/profinansy_nestjs_test_task

Реализация тестового задания
https://github.com/rustkas/profinansy_nestjs_test_task

bcrypt jwt nestjs postgres redis typeorm

Last synced: about 2 months ago
JSON representation

Реализация тестового задания

Awesome Lists containing this project

README

          

# Реализация тестового задания

## Описание задания:

Сделать простую систему авторизации/регистрации/получение информации о пользователе на Node.js.

☝🏾Обязательно, чтобы фигурировал jwt токен из-за микросервисной архитектуры. Чтобы потом любые другие сервисы, зная публичный сертификат, могли валидировать токен, не обращаясь к базам.
База данных для хранения пользователей - postgresql. База данных хранения сессий - Redis.

☝🏾Обязательно использовать nest.js.

Для запуска веб-сервиса в командой строке необходимо ввести "yarn start".

## Описание резации:

Релизована простая систему авторизации/регистрации/получение информации о пользователе на Nest.js.

Хранение данных пользователей в Postgres (предварительно созданной базе данных).

Хранение данных ссей в Redis.

### Пути сервиса`SITE/users`:

- Post `SITE/users` - создание пользователя

- Get `SITE/users/:email` - получение данных о пользователе. Например, `http://localhost:3000/users/example@example.com`

- Put `SITE/users/:email` - внесение изменений в данные пользователя

- @Delete `SITE/users/:email`- удаление данных о пользователе

- Post `SITE/users/login`) - в пользователе в сервис
- Post `SITE/users/logout` - завершение сессии пользователя.

Реализовано хэширование паролей (bcrypt).

Создана стратегия, которая использует passport-jwt для извлечения и валидации JWT-токенов.

Реализована защита маршрутов с помощью Guard.


Nest Logo

[circleci-image]: https://img.shields.io/circleci/build/github/nestjs/nest/master?token=abc123def456
[circleci-url]: https://circleci.com/gh/nestjs/nest

A progressive Node.js framework for building efficient and scalable server-side applications.



NPM Version
Package License
NPM Downloads
CircleCI
Coverage
Discord
Backers on Open Collective
Sponsors on Open Collective

Support us


## Description

[Nest](https://github.com/nestjs/nest) framework TypeScript starter repository.

## Installation

```bash
$ yarn install
```

## Running the app

```bash
# development
$ yarn run start

# watch mode
$ yarn run start:dev

# production mode
$ yarn run start:prod
```

## Test

```bash
# unit tests
$ yarn run test

# e2e tests
$ yarn run test:e2e

# test coverage
$ yarn run test:cov
```

## Support

Nest is an MIT-licensed open source project. It can grow thanks to the sponsors and support by the amazing backers. If you'd like to join them, please [read more here](https://docs.nestjs.com/support).

## Stay in touch

- Author - [Kamil Myśliwiec](https://kamilmysliwiec.com)
- Website - [https://nestjs.com](https://nestjs.com/)
- Twitter - [@nestframework](https://twitter.com/nestframework)

## License

Nest is [MIT licensed](LICENSE).