-
-
Notifications
You must be signed in to change notification settings - Fork 27
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update user registration flow to support new backend auth endpoints #161
Comments
PR has been merged. Is this available? |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
Is this still available? Not sure if @peoray still wanted to take it. |
@pdotsani Yeah, I'm still active on this. If you want, we can pair and work on it together |
Sounds good! Are you on slack? I think I pinged you... |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
@pdotsani -- the stale bot has come for this again. I think commenting on it will be sufficient to keep it open....but thought I'd ping you just in case. |
Actually, it closed it. 😢 Reopening. |
Isn't there a tag we can use that makes stalebot ignore issues? |
@angelocordon - maybe - If there is, I don't have time at the moment to find it. For the backend, we review and then remove the stale flag for issues that get marked stale. I only noticed this for frontend because I got a note it was closed b/c its linked to a backend issue I was working on. |
Context
Note: work on this issue after codebuddies/backend#187 is merged in. That PR rewrote the auth to use a more up-to-date auth package that supports email verification, an important step we didn't support before.
First, let me try registering a new user:
POST /api/v1/auth/registration/
{
"username": "linda",
"email": "[email protected]",
"password1": "uniquepassword",
"password2": "uniquepassword"
}
I'll get a 201 Response:
{
"detail": "Verification e-mail sent."
}
If I login without verifying the email, I'll get the following 400 response:
POST /api/v1/auth/login/
{
"username": "",
"email": "",
"password": ""
}
HTTP 400 Bad Request
Allow: POST, OPTIONS
Content-Type: application/json
Vary: Accept
{
"non_field_errors": [
"E-mail is not verified."
]
}
When the verification email is sent, it'll contain a link that looks something like:
http://localhost:8000/api/v1/auth/registration/verify-email/?key=
On the FE app, we'll need to create a page with the route /api/v1/auth/registration/verify-email/?key=
and make a POST request sending the key:
POST /api/v1/auth/registration/verify-email/
{
"key":
}
This will validate the email address.
Source: codebuddies/backend#191
How to log out:
POST api/v1/auth/logout
How to view the details of a currently-logged-in user
![image](https://user-images.githubusercontent.com/4512699/94349271-c1b39c00-fff7-11ea-83fc-328363b828d8.png)
GET api/v1/auth/user
GET api/v1/auth/current_user //without email address
![image](https://user-images.githubusercontent.com/4512699/94349270-beb8ab80-fff7-11ea-9526-019a3b267291.png)
Acceptance criteria
[ ] Update the POST request when a user registers to hit
POST /api/v1/auth/registration/
[ ] Remove the first name and last name fields
[ ] Change the login endpoint to be
POST /api/v1/auth/login/
[ ] Change the logout endpoint to be
POST api/v1/auth/logout
[ ] Create a api/v1/auth/registration/verify-email?key={KEY} page that upon load, makes a POST request to /verify-email and passes in the key from the params in the URL
The text was updated successfully, but these errors were encountered: