journalentry for 2021-05-31 added
toc depth set to 4
This commit is contained in:
parent
dec9a90fc5
commit
228b723773
@ -7,12 +7,13 @@ Kompentenzinventar Entwickungsdokumentation
|
|||||||
===========================================
|
===========================================
|
||||||
|
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 3
|
:maxdepth: 4
|
||||||
:caption: Contents:
|
:caption: Contents:
|
||||||
|
|
||||||
architecture/overview
|
architecture/overview
|
||||||
journal/journal
|
journal/journal
|
||||||
|
|
||||||
|
|
||||||
Indices and tables
|
Indices and tables
|
||||||
==================
|
==================
|
||||||
|
|
||||||
|
@ -1,6 +1,204 @@
|
|||||||
Journal
|
Journal
|
||||||
#######
|
#######
|
||||||
|
|
||||||
|
2021-05-31 AG Dev - Kompentenzinventar
|
||||||
|
======================================
|
||||||
|
backend repository aufgesetzt
|
||||||
|
https://git.wtf-eg.de/kompetenzinventar/ki-backend.git
|
||||||
|
|
||||||
|
Fürs Backend soll flask eingesetzt werden.
|
||||||
|
|
||||||
|
Für Datenmodell siehe #3.
|
||||||
|
|
||||||
|
Authentifizierung
|
||||||
|
*****************
|
||||||
|
|
||||||
|
HTTP Bearer Token. Wird vom Backend verwaltet. Es gibt eine konfigurierbare, maximale Gültigkeit für einen Token.
|
||||||
|
|
||||||
|
Allgemeine Antworten:
|
||||||
|
|
||||||
|
* 401: Anfrage ohne Token
|
||||||
|
* 403: Token abgelaufen oder ungültig
|
||||||
|
|
||||||
|
Authorisierung
|
||||||
|
**************
|
||||||
|
|
||||||
|
* Zugriff nur mit Login
|
||||||
|
* Jeder eingloggte Benutzer darf alles sehen
|
||||||
|
* Ein Benutzer darf nur sein eigenes Profil bearbeiten
|
||||||
|
|
||||||
|
Endpunkte
|
||||||
|
*****************
|
||||||
|
|
||||||
|
POST `/users/login`
|
||||||
|
-------------------
|
||||||
|
|
||||||
|
Hiermit kann sich ein Benutzer anmelden. Der Endpunkt authentifiziert gegen LDAP.
|
||||||
|
|
||||||
|
Anfrage:
|
||||||
|
|
||||||
|
.. code-block:: text
|
||||||
|
:linenos:
|
||||||
|
|
||||||
|
{
|
||||||
|
"username": "peter",
|
||||||
|
"password": "asdasd"
|
||||||
|
}
|
||||||
|
|
||||||
|
Antwort:
|
||||||
|
**Status 200**
|
||||||
|
|
||||||
|
Login hat geklappt
|
||||||
|
|
||||||
|
|
||||||
|
.. code-block:: json
|
||||||
|
|
||||||
|
{
|
||||||
|
"token": "aSDASDADASDASD"
|
||||||
|
}
|
||||||
|
|
||||||
|
**Status 403**
|
||||||
|
|
||||||
|
Login hat nicht geklappt. Grund ist Benutzer existiert nicht oder Passwort war falsch. Kein weiterer Text über die API wegen Sicherheit.
|
||||||
|
|
||||||
|
DELETE `/users/login`
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
Markiert den zur Request Authentifizierung verwendeten Token als nicht mehr gültig.
|
||||||
|
|
||||||
|
POST `/users/profile`
|
||||||
|
---------------------
|
||||||
|
|
||||||
|
Speichert ein Profil ab. Übertragene Daten entsprechen #3 im JSON Format.
|
||||||
|
|
||||||
|
Anfrage:
|
||||||
|
|
||||||
|
.. code-block:: json
|
||||||
|
|
||||||
|
{
|
||||||
|
"profile": {}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Antwort:
|
||||||
|
|
||||||
|
**Status 200**
|
||||||
|
|
||||||
|
Gespeichert, ok
|
||||||
|
|
||||||
|
**Status 400**
|
||||||
|
|
||||||
|
Validierung fehlgeschlagen
|
||||||
|
|
||||||
|
.. code-block:: json
|
||||||
|
|
||||||
|
{
|
||||||
|
"messages": {
|
||||||
|
"nickname": "Bitte ausfüllen"
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
GET `/users/{id}/profile`
|
||||||
|
-------------------------
|
||||||
|
|
||||||
|
Endpunkt um ein Profil gezielt nach ID abzurufen.
|
||||||
|
|
||||||
|
Antwort:
|
||||||
|
|
||||||
|
|
||||||
|
**Status 200**
|
||||||
|
|
||||||
|
Profil gefunden
|
||||||
|
|
||||||
|
.. code-block:: json
|
||||||
|
|
||||||
|
{
|
||||||
|
"profile": {}
|
||||||
|
}
|
||||||
|
|
||||||
|
GET `/users/profiles`
|
||||||
|
-------------------------
|
||||||
|
|
||||||
|
Suche nach Profilen mit Query-Parametern:
|
||||||
|
|
||||||
|
* `skill[]=PHP`
|
||||||
|
* `page=1` für die Paginierung
|
||||||
|
* `page_size=20` Einträge pro Seite
|
||||||
|
|
||||||
|
(Liste wird erweitert).
|
||||||
|
|
||||||
|
Antwort:
|
||||||
|
|
||||||
|
.. code-block:: json
|
||||||
|
|
||||||
|
{
|
||||||
|
"total": 23,
|
||||||
|
"profiles": []
|
||||||
|
}
|
||||||
|
|
||||||
|
* `total` Gesamtanzahl der passenden Profile
|
||||||
|
* `profils` Liste mit Profilen
|
||||||
|
|
||||||
|
GET `/skills`
|
||||||
|
-------------------------
|
||||||
|
|
||||||
|
Hier können die auswählbaren Fähigkeiten inkl. Autovervollständigung abgerufen werden sowie "Ich Suche".
|
||||||
|
|
||||||
|
* `search=an`
|
||||||
|
* Es werden 10 Einträge zurückgegeben
|
||||||
|
|
||||||
|
Antwort:
|
||||||
|
|
||||||
|
.. code-block:: json
|
||||||
|
|
||||||
|
{
|
||||||
|
"skills": [
|
||||||
|
{
|
||||||
|
"id": 23,
|
||||||
|
"name": "Angular"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"id": 42,
|
||||||
|
"name": "Anforderungs-Management"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
GET `/skills/{id}/icon`
|
||||||
|
-----------------------
|
||||||
|
|
||||||
|
Icon einer Fähigkeit (weils gut ausschaut).
|
||||||
|
|
||||||
|
GET `/languages`
|
||||||
|
----------------
|
||||||
|
|
||||||
|
Abruf der Sprachen.
|
||||||
|
|
||||||
|
* `search=fra`
|
||||||
|
* Es werden 10 Einträge zurückgegeben
|
||||||
|
|
||||||
|
Antwort:
|
||||||
|
|
||||||
|
.. code-block:: json
|
||||||
|
|
||||||
|
{
|
||||||
|
"languages": [
|
||||||
|
{
|
||||||
|
"id": 23,
|
||||||
|
"name": "Französisch"
|
||||||
|
}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
GET `/languages/{id}/icon`
|
||||||
|
--------------------------
|
||||||
|
|
||||||
|
Icon einer Sprache (weils gut ausschaut).
|
||||||
|
|
||||||
|
|
||||||
2021-05-28 KI Onboarding Planung
|
2021-05-28 KI Onboarding Planung
|
||||||
================================
|
================================
|
||||||
scammos wireframes vom Frontend
|
scammos wireframes vom Frontend
|
||||||
|
Loading…
Reference in New Issue
Block a user