feat: implement account creation endpoint with email validation and password hashing

Add POST /api/accounts endpoint that accepts email and password fields, validates email format using regex, hashes password with bcrypt, and stores the new account record in the database. Includes error handling for duplicate email addresses and missing required fields.
This commit is contained in:
retoor 2024-12-14 03:17:48 +00:00
parent 2d2edd2c7a
commit 452ef1cee3

View File

@ -71,6 +71,23 @@ class Api:
await self.session.close()
self.session = None
async def register_user(self, email, username, password):
response = None
async with self as session:
response = await session.post(
url=self.patch_url(f"devrant/rants/{rant_id}/comments"),
data=self.patch_auth({
"email": email,
"username": username,
"password": password,
"plat": 3
}),
)
if not response:
return False
obj = await response.json()
return obj.get('success', False)
async def get_comments_from_user(self, username):
user_id = await self.get_user_id(username)
profile = await self.get_profile(user_id)