2020-03-01 07:51:56 +03:00
|
|
|
# Dj-Rest-Auth
|
2020-03-02 01:46:47 +03:00
|
|
|
[![<iMerica>](https://circleci.com/gh/jazzband/dj-rest-auth.svg?style=svg)](https://app.circleci.com/github/jazzband/dj-rest-auth/pipelines)
|
2020-03-07 02:47:44 +03:00
|
|
|
[![Jazzband](https://jazzband.co/static/img/badge.svg)](https://jazzband.co/)
|
2020-03-07 02:56:32 +03:00
|
|
|
[![Coverage Status](https://coveralls.io/repos/github/jazzband/dj-rest-auth/badge.svg?branch=master)](https://coveralls.io/github/jazzband/dj-rest-auth?branch=master)
|
2020-03-01 07:51:56 +03:00
|
|
|
|
2020-03-01 09:06:45 +03:00
|
|
|
Drop-in API endpoints for handling authentication securely in Django Rest Framework. Works especially well
|
2020-03-01 09:07:36 +03:00
|
|
|
with SPAs (e.g React, Vue, Angular), and Mobile applications.
|
2020-03-01 08:02:01 +03:00
|
|
|
|
2020-03-01 08:23:47 +03:00
|
|
|
## Requirements
|
2020-03-01 08:02:01 +03:00
|
|
|
- Django 2 or 3.
|
|
|
|
- Python 3
|
|
|
|
|
2020-03-01 08:23:47 +03:00
|
|
|
## Quick Setup
|
2020-03-01 08:02:01 +03:00
|
|
|
|
|
|
|
Install package
|
|
|
|
|
|
|
|
pip install dj-rest-auth
|
|
|
|
|
|
|
|
Add `dj_rest_auth` app to INSTALLED_APPS in your django settings.py:
|
|
|
|
|
2020-03-22 14:38:54 +03:00
|
|
|
```python
|
|
|
|
INSTALLED_APPS = (
|
|
|
|
...,
|
|
|
|
'rest_framework',
|
|
|
|
'rest_framework.authtoken',
|
|
|
|
...,
|
|
|
|
'dj_rest_auth'
|
|
|
|
)
|
|
|
|
```
|
2020-03-01 08:02:01 +03:00
|
|
|
|
|
|
|
Add URL patterns
|
|
|
|
|
2020-03-22 14:38:54 +03:00
|
|
|
```python
|
|
|
|
urlpatterns = [
|
|
|
|
url(r'^dj-rest-auth/', include('dj_rest_auth.urls'))
|
|
|
|
]
|
|
|
|
```
|
|
|
|
|
|
|
|
|
2020-03-22 14:40:01 +03:00
|
|
|
(Optional) Use Http-Only cookies
|
2020-03-22 14:38:54 +03:00
|
|
|
|
|
|
|
```python
|
|
|
|
REST_USE_JWT = True
|
|
|
|
JWT_AUTH_COOKIE = 'jwt-auth'
|
|
|
|
```
|
|
|
|
|
2020-04-08 03:24:15 +03:00
|
|
|
### Testing
|
2020-03-22 14:38:54 +03:00
|
|
|
|
2020-04-08 03:24:15 +03:00
|
|
|
To run the tests within a virtualenv, run `python runtests.py` from the repository directory.
|
|
|
|
The easiest way to run test coverage is with [`coverage`](https://pypi.org/project/coverage/),
|
|
|
|
which runs the tests against all supported Django installs. To run the test coverage
|
|
|
|
within a virtualenv, run `coverage run ./runtests.py` from the repository directory then run `coverage report`.
|
2020-03-01 08:02:01 +03:00
|
|
|
|
|
|
|
|
2020-03-01 08:23:47 +03:00
|
|
|
### Documentation
|
|
|
|
|
|
|
|
View the full documentation here: https://dj-rest-auth.readthedocs.io/en/latest/index.html
|
|
|
|
|
2020-03-01 08:06:12 +03:00
|
|
|
|
|
|
|
### Acknowledgements
|
|
|
|
|
|
|
|
This project began as a fork of `django-rest-auth`. Big thanks to everyone who contributed to that repo!
|