What does the HTTP GET method do in CRUD operations?
GET is used to read or retrieve data from the server without changing it.
Click to reveal answer
beginner
Which HTTP method is used to create new data in CRUD?
POST is used to create new resources or data on the server.
Click to reveal answer
intermediate
How does the HTTP PUT method relate to CRUD?
PUT is used to update existing data by replacing it completely.
Click to reveal answer
intermediate
What is the difference between PUT and PATCH in CRUD?
PUT replaces the entire resource, while PATCH partially updates the resource.
Click to reveal answer
beginner
Which HTTP method is used to delete data in CRUD?
DELETE is used to remove data or resources from the server.
Click to reveal answer
Which HTTP method is typically used to retrieve data without changing it?
ADELETE
BPOST
CPUT
DGET
✗ Incorrect
GET requests fetch data without modifying it.
Which HTTP method should you use to create a new resource?
APOST
BPATCH
CGET
DDELETE
✗ Incorrect
POST is used to create new resources on the server.
If you want to update only part of a resource, which HTTP method fits best?
APATCH
BPOST
CPUT
DGET
✗ Incorrect
PATCH updates parts of a resource without replacing it fully.
Which HTTP method removes a resource from the server?
APUT
BDELETE
CPOST
DGET
✗ Incorrect
DELETE removes resources from the server.
What is the main difference between PUT and PATCH?
APUT creates, PATCH deletes
BPUT reads data, PATCH creates data
CPUT replaces entire resource, PATCH updates part
DPUT deletes data, PATCH reads data
✗ Incorrect
PUT replaces the whole resource; PATCH updates only parts.
Explain how HTTP methods map to CRUD operations with simple examples.
Think about how you interact with data: reading, adding, changing, or deleting.
You got /5 concepts.
Describe the difference between PUT and PATCH methods in updating resources.
Consider if you want to change everything or just a piece.
You got /3 concepts.
Practice
(1/5)
1. Which HTTP method is typically used to retrieve data from a server in a RESTful API?
easy
A. GET
B. POST
C. PUT
D. DELETE
Solution
Step 1: Understand HTTP methods and their purposes
In RESTful APIs, GET is used to read or retrieve data from the server.
Step 2: Match the method to the action
POST creates, PUT updates, and DELETE removes data, so only GET fits retrieving data.
Final Answer:
GET -> Option A
Quick Check:
Read = GET [OK]
Hint: GET is for reading data, like looking at a book [OK]
Common Mistakes:
Confusing POST with GET
Using DELETE to fetch data
Thinking PUT retrieves data
2. Which of the following Express route definitions correctly handles updating a resource using the HTTP method for update?
easy
A. app.get('/item/:id', handler)
B. app.post('/item/:id', handler)
C. app.put('/item/:id', handler)
D. app.delete('/item/:id', handler)
Solution
Step 1: Identify the HTTP method for updating
Updating a resource uses the PUT method in RESTful APIs.
Step 2: Match Express method to HTTP method
Express uses app.put() to handle PUT requests, so app.put('/item/:id', handler) is correct.
Final Answer:
app.put('/item/:id', handler) -> Option C
Quick Check:
Update = PUT = app.put() [OK]
Hint: Use app.put() for updates in Express routes [OK]
Common Mistakes:
Using app.post() for updates
Using app.get() for updates
Confusing app.delete() with update
3. Consider this Express code snippet:
app.delete('/user/:id', (req, res) => {
res.send(`Deleted user ${req.params.id}`);
});
// Client sends DELETE request to /user/42
What will the server respond with?
medium
A. "Updated user 42"
B. "Deleted user 42"
C. "Created user 42"
D. 404 Not Found
Solution
Step 1: Understand the route and HTTP method
The route listens for DELETE requests on /user/:id. The client sends a DELETE request to /user/42.
Step 2: Analyze the response sent
The handler sends back the string Deleted user 42 using the id from the URL.
Final Answer:
"Deleted user 42" -> Option B
Quick Check:
DELETE request responds with deletion message [OK]
Hint: DELETE routes respond with deletion confirmation [OK]
Common Mistakes:
Confusing DELETE with POST response
Expecting 404 instead of success message
Mixing up URL parameters
4. What is wrong with this Express route for creating a new item?
app.get('/items', (req, res) => {
// code to add new item
res.send('Item created');
});
medium
A. Missing route parameter for item ID
B. Route path should be '/item' not '/items'
C. Response message is incorrect
D. GET method should not be used to create data
Solution
Step 1: Identify the HTTP method used
The route uses GET, which is meant for reading data, not creating.
Step 2: Match method to CRUD action
Creating new data should use POST, so using GET here is incorrect.
Final Answer:
GET method should not be used to create data -> Option D
Quick Check:
Create = POST, not GET [OK]
Hint: Use POST to create, not GET [OK]
Common Mistakes:
Using GET to create resources
Ignoring HTTP method semantics
Assuming route path is the issue
5. You want to build an Express API that allows clients to create, read, update, and delete "products". Which set of route definitions correctly maps HTTP methods to CRUD actions?
hard
A. app.post('/products', createHandler); app.get('/products/:id', readHandler); app.put('/products/:id', updateHandler); app.delete('/products/:id', deleteHandler);
B. app.get('/products', createHandler); app.post('/products/:id', readHandler); app.put('/products', updateHandler); app.delete('/products', deleteHandler);
C. app.put('/products', createHandler); app.get('/products/:id', readHandler); app.post('/products/:id', updateHandler); app.delete('/products/:id', deleteHandler);
D. app.delete('/products', createHandler); app.put('/products/:id', readHandler); app.post('/products/:id', updateHandler); app.get('/products/:id', deleteHandler);
Solution
Step 1: Match each CRUD action to correct HTTP method
app.post('/products', createHandler); app.get('/products/:id', readHandler); app.put('/products/:id', updateHandler); app.delete('/products/:id', deleteHandler); uses POST /products for create, GET /products/:id for read, PUT /products/:id for update, and DELETE /products/:id for delete, which is correct.