This project provides an organized application directory structure from which you can begin your NodeJS project. Use it to host an ExpressJS API using MongooseJS.
- @session_role
- @body = POST param
- @param = URL param /user/:param
- (options)
Method | Endpoint | Action |
---|---|---|
POST |
/user | Create User |
POST |
/:role/login | Login User |
POST |
/user/logout | Logout User |
PUT |
/user/password | Update Password |
GET |
/user/auth | Auth User |
GET |
/:role\s | List Users |
GET |
/user/:uid | Show User |
DELETE |
/user | Delete User |
### User Routes #### Create User Create new user
- @body email
- @body password (8 - 20 chars, 1+ digit)
- @body name
- @body role (user|admin)
- @body email
- @body password
Same as Show User
#### Logout UserDestroy user session
#### Update PasswordUpdate user password
#### Auth User Check if session is valid #### List Users List all user with role- @param role (user|admin)
- @param uid
- @body password
Mongoose connection opened: mongodb://localhost/db-development
Nomadic Fitness API running at http://192.168.1.106:8000
POST /user 200 207ms - 118b
POST /client/login 200 94ms - 118b
GET /user/auth 200 5ms
PUT /user/password 200 6ms - 118b
DELETE /user 200 3ms - 33b
Testing http://localhost:8000
POST /user
{
"email": "[email protected]",
"password": "password1",
"name": "Hugh Boylan"
}
RESPONSE: [200]
{
"email": "[email protected]",
"name": "Hugh Boylan",
"_id": "532bc0a42a185f2438000002",
"role": "client"
}
POST /client/login
{
"email": "[email protected]",
"password": "password1"
}
RESPONSE: [200]
{
"email": "[email protected]",
"name": "Hugh Boylan",
"_id": "532bc0a42a185f2438000002",
"role": "client"
}
GET /user/auth
{}
RESPONSE: [200]
null
PUT /user/password
{
"password": "password2"
}
RESPONSE: [200]
{
"_id": "532bc0a42a185f2438000002",
"email": "[email protected]",
"name": "Hugh Boylan",
"role": "client"
}
DELETE /user
{
"password": "password2"
}
RESPONSE: [200]
{
"error": "Invalid password"
}