#31 API Frontend token generating

* adds frontend settings for users to create API tokens on their user settings
This commit is contained in:
2022-01-27 11:37:38 +01:00
parent fc0cd2f086
commit c9bccec1a5
16 changed files with 255 additions and 29 deletions

View File

@@ -7,8 +7,11 @@ Created on: 21.01.22
"""
from django.urls import path, include
from api.views.method_views import generate_new_token_view
app_name = "api"
urlpatterns = [
path("v1/", include("api.urls.v1.urls", namespace="v1")),
path("token/generate", generate_new_token_view, name="generate-new-token"),
]

35
api/views/method_views.py Normal file
View File

@@ -0,0 +1,35 @@
"""
Author: Michel Peltriaux
Organization: Struktur- und Genehmigungsdirektion Nord, Rhineland-Palatinate, Germany
Contact: michel.peltriaux@sgdnord.rlp.de
Created on: 27.01.22
"""
from django.contrib.auth.decorators import login_required
from django.http import HttpRequest, JsonResponse
from api.models import APIUserToken
@login_required
def generate_new_token_view(request: HttpRequest):
""" Handles request for fetching
Args:
request (HttpRequest): The incoming request
Returns:
"""
if request.method == "GET":
token = APIUserToken()
while APIUserToken.objects.filter(token=token.token).exists():
token = APIUserToken()
return JsonResponse(
data={
"gen_data": token.token
}
)
else:
raise NotImplementedError

View File

@@ -253,4 +253,4 @@ class EcoAccountAPIShareView(AbstractModelShareAPIView):
class EmaAPIShareView(AbstractModelShareAPIView):
model = Ema
model = Ema