Bird
Raised Fist0
Expressframework~5 mins

Creating documents in Express - Quick Revision & Summary

Choose your learning style10 modes available

Start learning this pattern below

Jump into concepts and practice - no test required

or
Recommended
Test this pattern10 questions across easy, medium, and hard to know if this pattern is strong
Recall & Review
beginner
What is the main purpose of creating documents in Express?
Creating documents in Express usually means generating and sending files like HTML, JSON, or PDFs as responses to client requests.
Click to reveal answer
beginner
Which Express method is commonly used to send JSON documents to the client?
The res.json() method sends a JSON document as the HTTP response.
Click to reveal answer
intermediate
How do you send an HTML document as a response in Express?
You can use res.send() with an HTML string or use res.render() if you have a template engine set up.
Click to reveal answer
intermediate
What is the role of middleware when creating documents in Express?
Middleware can process data, generate documents, or modify responses before sending them to the client.
Click to reveal answer
beginner
How can you serve a static document file like a PDF in Express?
Use res.sendFile() with the file path to send static files like PDFs to the client.
Click to reveal answer
Which Express method sends a JSON document as a response?
Ares.json()
Bres.sendFile()
Cres.render()
Dres.download()
To send an HTML page using a template engine in Express, you use:
Ares.sendFile()
Bres.json()
Cres.render()
Dres.download()
Which method is best to send a static PDF file to the client?
Ares.json()
Bres.send()
Cres.render()
Dres.sendFile()
Middleware in Express can be used to:
AOnly log requests
BModify responses before sending documents
CReplace Express router
DServe static files only
Which method sends a plain string or HTML directly as a response?
Ares.send()
Bres.render()
Cres.json()
Dres.download()
Explain how you would send a JSON document and an HTML document in Express.
Think about the response methods for different content types.
You got /3 concepts.
    Describe how middleware can help when creating and sending documents in Express.
    Middleware acts like a helper in the request-response cycle.
    You got /3 concepts.

      Practice

      (1/5)
      1. Which Express method is used to handle creating new documents via HTTP POST requests?
      easy
      A. app.post()
      B. app.get()
      C. app.put()
      D. app.delete()

      Solution

      1. Step 1: Understand HTTP methods in Express

        Express uses different methods like get, post, put, and delete to handle HTTP requests.
      2. Step 2: Identify method for creating new data

        The post method is used to create new documents or data entries.
      3. Final Answer:

        app.post() -> Option A
      4. Quick Check:

        Creating documents = app.post() [OK]
      Hint: Use app.post() for creating new data entries [OK]
      Common Mistakes:
      • Using app.get() instead of app.post()
      • Confusing app.put() with app.post()
      • Using app.delete() for creation
      2. Which code snippet correctly enables JSON parsing middleware in Express to access req.body?
      easy
      A. app.use(express.urlencoded());
      B. app.use(express.json());
      C. app.use(bodyParser.text());
      D. app.use(express.static('public'));

      Solution

      1. Step 1: Identify middleware for JSON parsing

        Express provides express.json() middleware to parse JSON request bodies.
      2. Step 2: Match correct usage

        The correct way is app.use(express.json()); to enable JSON parsing.
      3. Final Answer:

        app.use(express.json()); -> Option B
      4. Quick Check:

        JSON parsing middleware = express.json() [OK]
      Hint: Use app.use(express.json()) to read JSON body [OK]
      Common Mistakes:
      • Using express.urlencoded() for JSON data
      • Using bodyParser.text() instead of JSON parser
      • Forgetting to enable any parser middleware
      3. What will be the HTTP status code sent when the following Express route successfully creates a document?
      app.post('/items', (req, res) => {
        // Assume document creation here
        res.status(201).send('Created');
      });
      medium
      A. 200
      B. 500
      C. 400
      D. 201

      Solution

      1. Step 1: Understand HTTP status codes for creation

        Status code 201 means "Created" and is used when a new resource is successfully created.
      2. Step 2: Check the code's status method

        The code uses res.status(201), so it sends status 201.
      3. Final Answer:

        201 -> Option D
      4. Quick Check:

        Creation success status = 201 [OK]
      Hint: Use status 201 for successful creation responses [OK]
      Common Mistakes:
      • Assuming 200 means creation success
      • Using 400 or 500 for successful creation
      • Not setting status code explicitly
      4. Identify the error in this Express route for creating a document:
      app.post('/users', (req, res) => {
        const user = req.body;
        saveUser(user);
        res.send('User created');
      });
      medium
      A. saveUser function is not asynchronous
      B. Using res.send instead of res.json
      C. Missing JSON parsing middleware to read req.body
      D. Route should use app.get instead of app.post

      Solution

      1. Step 1: Check access to req.body

        Without JSON parsing middleware, req.body will be undefined.
      2. Step 2: Identify missing middleware

        The code does not show app.use(express.json()), so req.body won't work.
      3. Final Answer:

        Missing JSON parsing middleware to read req.body -> Option C
      4. Quick Check:

        Missing express.json() causes req.body undefined [OK]
      Hint: Always enable express.json() before accessing req.body [OK]
      Common Mistakes:
      • Thinking res.send must be res.json
      • Using app.get for creation routes
      • Assuming saveUser must be async here
      5. You want to create an Express route that accepts JSON data to create a new product and respond with the created product including an ID. Which code snippet correctly implements this?
      hard
      A. app.post('/products', (req, res) => { const product = req.body; product.id = Date.now(); res.status(201).json(product); });
      B. app.get('/products', (req, res) => { const product = req.body; product.id = Date.now(); res.json(product); });
      C. app.post('/products', (req, res) => { const product = req.query; product.id = Date.now(); res.status(200).send(product); });
      D. app.post('/products', (req, res) => { const product = req.body; res.send('Product created'); });

      Solution

      1. Step 1: Use correct HTTP method and access JSON body

        The route uses app.post and accesses req.body which is correct for creating a product.
      2. Step 2: Add an ID and respond with status 201 and JSON

        Assigning product.id = Date.now() simulates creating an ID. Responding with res.status(201).json(product) sends the created product with proper status.
      3. Final Answer:

        Option A code snippet -> Option A
      4. Quick Check:

        POST + req.body + status 201 + json response = app.post('/products', (req, res) => { const product = req.body; product.id = Date.now(); res.status(201).json(product); }); [OK]
      Hint: Use app.post with req.body and res.status(201).json() [OK]
      Common Mistakes:
      • Using app.get instead of app.post
      • Reading data from req.query instead of req.body
      • Not sending status 201 on creation