From c7d4b0c26241a4fe9224fda5cbd77190f95cae5a Mon Sep 17 00:00:00 2001 From: cami Date: Wed, 23 Jun 2021 01:26:55 +0200 Subject: [PATCH] Added very simple register backend and frontend --- backend/src/app.py | 16 ++++++++++++ frontend/src/components/pages/Register.js | 32 ++++++++++++++++++++--- 2 files changed, 45 insertions(+), 3 deletions(-) diff --git a/backend/src/app.py b/backend/src/app.py index b03aab9..6e76a6c 100644 --- a/backend/src/app.py +++ b/backend/src/app.py @@ -132,6 +132,22 @@ def protected(): -H "Authorization: Bearer " """ return {'message': f'protected endpoint (allowed user {flask_praetorian.current_user().username})'} + +@app.route('/api/register', methods=['POST']) +def register(): + req = flask.request.get_json(force=True) + username = req.get('username', None) + password = req.get('password', None) + new_user = User( + username=username, + password=guard.hash_password(password) + ) + db.session.add(new_user) + db.session.commit() + ret = {'message': 'Account erstellt für den Account {}'.format( + new_user.username + )} + return ret, 200 @app.route('/time') def get_current_time(): diff --git a/frontend/src/components/pages/Register.js b/frontend/src/components/pages/Register.js index fde05ef..014a97b 100644 --- a/frontend/src/components/pages/Register.js +++ b/frontend/src/components/pages/Register.js @@ -1,28 +1,54 @@ import React from "react"; +import { useState } from "react/cjs/react.development"; import "../../App.css"; import Footer from "../../Footer"; import InputField from "../InputField"; import SubmitField from "../SubmitField"; export default function Login() { + const [username, setUsername] = useState('') + const [password, setPassword] = useState('') + + const onSubmitClick = (e) => { + e.preventDefault(); + let opts = { + username: username, + password: password, + }; + console.log(opts); + fetch("/api/register", { + method: "post", + body: JSON.stringify(opts), + }) + }; + + const handleUsernameChange = (e) => { + setUsername(e.target.value); + }; + + const handlePasswordChange = (e) => { + setPassword(e.target.value); + }; + return ( <>

Registrierung

-

Herzlich willkommen bei meiner Bachelorarbeit. Du kannst dich hier einfach registrieren, sodass du mir ein positives Feedback hinterlassen kannst. Bei der ersten Registrierung geht es darum, dass ich ein paar Sachen über dich kennenlerne. Ich werde diese Fragen strikt trennen mit der eigentlichen Fragestellung. Diese Fragen dienen mir dazu, dass ich einschätzen kann, welche Leute ich befragt habe.


- +