Arti
03/16/2023, 4:08 PMpy
class UserRegisterModel(BaseModel):
email: str
password: str
@router.post('/register')
async def register_user(
request: Request,
user: UserRegisterModel,
):
email_password_quertier = Querier.get_instance('emailpassword')
path = NormalisedURLPath('/recipe/signup')
response = await email_password_quertier.send_post_request(path, user.dict())
if response.get('status') == 'OK':
user_id = response['user']['id']
session = await create_new_session(
request,
user_id
)
return True
raise Exception('user exists')
@router.post('/like_comment')
async def like_comment(request: Request):
session = await get_session(request, session_required=False)
if session is None:
raise Exception("Should never come here")
user_id = session.get_user_id()
print(user_id)
rp_st
03/16/2023, 4:38 PMrp_st
03/16/2023, 4:38 PMawait sign_up(..)
which you can use instead. See this: https://supertokens.com/docs/python/recipe/emailpassword/asyncio/index.htmlrp_st
03/16/2023, 4:39 PMregister_user
API call as seen on chrome's network tab?
- Can i see the supertokens.init on the backend?
- Are you using our frontend SDK? And whats the supertokens.init on the frontend look like?Arti
03/16/2023, 4:45 PMsign_up
method and so.
- request and response data I will send right now.
- I don't use frontend SDK at the moment
- this is my init:
py
init(
app_info=InputAppInfo(
app_name=config.supertokens.app_name,
api_domain=config.supertokens.api_domain,
website_domain=config.supertokens.website_domain,
api_base_path=config.supertokens.api_base_path,
website_base_path=config.supertokens.website_base_path,
),
supertokens_config=SupertokensConfig(
connection_uri=config.supertokens.connection_uri,
api_key=config.supertokens.api_key.get_secret_value(),
),
framework='fastapi',
recipe_list=[
session.init(),
emailpassword.init(),
usermetadata.init(),
dashboard.init(api_key=config.supertokens.api_key.get_secret_value())
],
mode='asgi',
)
I managed to use 'get_session' successfully now, but I'm not sure it's the correct way..
added:
py
from fastapi.security import HTTPBearer, HTTPAuthorizationCredentials
auth_scheme = HTTPBearer()
@router.post('/like_comment')
async def like_comment(request: Request, token: HTTPAuthorizationCredentials = Depends(auth_scheme)):
session = await get_session(request, session_required=False)
if session is None:
raise Exception("Should never come here")
user_id = session.get_user_id()
print(user_id)
and used 'st-access-token' from the previous response headerrp_st
03/16/2023, 4:47 PMrp_st
03/16/2023, 4:47 PMrp_st
03/16/2023, 4:47 PMArti
03/16/2023, 4:54 PMrp_st
03/16/2023, 5:01 PMrp_st
03/16/2023, 5:02 PMrp_st
03/16/2023, 5:03 PMArti
03/16/2023, 5:15 PMrp_st
03/16/2023, 5:16 PMrp_st
03/16/2023, 5:16 PMrp_st
03/16/2023, 5:18 PMArti
03/16/2023, 5:18 PMArti
03/16/2023, 6:21 PM