- fork this repository & create a new branch for your work
- write all of your code in a directory named
lab-+<your name>e.g.lab-susan - push to your repository
- submit a pull request to this repository
- submit a link to your PR in canvas
- write a question and observation on canvas
- students will be able to work with the MongoDB database management system
- students will understand the primary concepts of working with a NoSQL database management system
- students will be able to create custom data models (schemas) through the use of mongoose.js
- students will be able to use mongoose.js helper methods for interacting with their database persistence layer
package.json.eslintrc.gitignoreREADME.md- your
README.mdshould include detailed instructions on how to use your API
- your
- create an HTTP Server using
express - create a resource model of your choice that uses
mongoose.Schemaandmongoose.model - use the
body-parserexpress middleware to parse thereqbody onPOSTandPUTrequests - use the npm
debugmodule to log the functions and methods that are being used in your application - use the express
Routerto create a route for doing RESTFUL CRUD operations against your model
POSTrequest- should pass data as stringifed JSON in the body of a post request to create a new resource
GETrequest- should pass the id of a resource through the url endpoint to get a resource
- this should use
req.params, not querystring parameters
- this should use
- should pass the id of a resource through the url endpoint to get a resource
PUTrequest- should pass data as stringifed JSON in the body of a put request to update a pre-existing resource
DELETErequest- should pass the id of a resource though the url endpoint to delete a resource
- this should use
req.params
- this should use
- should pass the id of a resource though the url endpoint to delete a resource
- create a test that will ensure that your API returns a status code of 404 for routes that have not been registered
- create a series of tests to ensure that your
/api/resource-nameendpoint responds as described for each condition below:GET- test 200, returns a resource with a valid body
GET- test 404, respond with 'not found' for valid requests made with an id that was not foundPUT- test 200, returns a resource with an updated bodyPUT- test 400, responds with 'bad request' if no request body was providedPUT- test 404, responds with 'not found' for valid requests made with an id that was not foundPOST- test 400, responds with 'bad request' if no request body was providedPOST- test 200, returns a resource for requests made with a valid body
- 2pts: a
GETrequest to/api/resource-nameshould return an array of stored resources