Bird
Raised Fist0
Node.jsframework~5 mins

Request object properties in Node.js - Cheat Sheet & Quick Revision

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 req.url property in a Node.js request object?
It contains the full URL string of the incoming request, including the path and query string but excluding the domain.
Click to reveal answer
beginner
Explain the purpose of req.method in a Node.js request object.
It shows the HTTP method used by the client, such as GET, POST, PUT, or DELETE, indicating the type of action requested.
Click to reveal answer
beginner
What does req.headers represent in a Node.js request object?
It is an object containing all the HTTP headers sent by the client, like content-type, user-agent, and authorization.
Click to reveal answer
intermediate
How is req.body used in Node.js request handling?
It holds the data sent by the client in the request body, often used with POST or PUT requests to receive form data or JSON.
Click to reveal answer
intermediate
What information does req.params provide in a Node.js request object?
It contains route parameters extracted from the URL path, useful for dynamic routes like '/user/:id' to get the 'id' value.
Click to reveal answer
Which property of the Node.js request object contains the HTTP method used by the client?
Areq.headers
Breq.url
Creq.method
Dreq.body
Where would you find the query string parameters in a Node.js request object?
Areq.url
Breq.params
Creq.body
Dreq.headers
Which property contains the headers sent by the client?
Areq.headers
Breq.params
Creq.method
Dreq.body
If you want to access data sent in a POST request's body, which property do you use?
Areq.params
Breq.method
Creq.url
Dreq.body
How do you access dynamic route parameters like '/user/:id' in Node.js?
Areq.body
Breq.params
Creq.headers
Dreq.url
Describe the main properties of the Node.js request object and what each one is used for.
Think about what information the server needs from the client request.
You got /5 concepts.
    Explain how you would access data sent by a client in the URL path, query string, headers, and body using the request object.
    Each part of the request has a specific property in the request object.
    You got /4 concepts.

      Practice

      (1/5)
      1. Which property of the Node.js request object contains the HTTP method used by the client, such as GET or POST?
      easy
      A. req.method
      B. req.url
      C. req.headers
      D. req.body

      Solution

      1. Step 1: Understand the request object properties

        The request object has properties like method, url, headers, and body that describe the client's request.
      2. Step 2: Identify the property for HTTP method

        The HTTP method (GET, POST, etc.) is stored in req.method.
      3. Final Answer:

        req.method -> Option A
      4. Quick Check:

        HTTP method = req.method [OK]
      Hint: HTTP method is always in req.method [OK]
      Common Mistakes:
      • Confusing req.url with HTTP method
      • Using req.body to get method
      • Trying to find method in req.headers
      2. Which of the following is the correct way to access the URL path from the request object in Node.js?
      easy
      A. req.route
      B. req.path
      C. req.url
      D. req.address

      Solution

      1. Step 1: Recall the property for URL path

        The request object stores the full URL path in req.url.
      2. Step 2: Verify other options

        req.path is not standard in Node.js core, req.route is used in some frameworks but not for URL path, and req.address is invalid.
      3. Final Answer:

        req.url -> Option C
      4. Quick Check:

        URL path = req.url [OK]
      Hint: URL path is stored in req.url [OK]
      Common Mistakes:
      • Using req.path which is not standard in Node.js
      • Confusing req.route with URL
      • Trying to access req.address which doesn't exist
      3. Consider the following Node.js code snippet:
      const http = require('http');
      const server = http.createServer((req, res) => {
        res.end(req.headers['content-type']);
      });
      server.listen(3000);
      If a client sends a request with header Content-Type: application/json, what will be the output?
      medium
      A. application/json
      B. content-type
      C. undefined
      D. Error

      Solution

      1. Step 1: Understand how headers are accessed

        Headers in Node.js request object are stored in lowercase keys inside req.headers. So content-type is the correct key.
      2. Step 2: Check the code output

        The code returns req.headers['content-type'], which matches the header sent by the client: application/json.
      3. Final Answer:

        application/json -> Option A
      4. Quick Check:

        Header content-type value = application/json [OK]
      Hint: Headers keys are lowercase in req.headers [OK]
      Common Mistakes:
      • Using 'Content-Type' instead of 'content-type' key
      • Expecting req.headers to be case-sensitive
      • Assuming undefined if header not found
      4. What is wrong with this Node.js code snippet that tries to read JSON data from the request body?
      const http = require('http');
      const server = http.createServer((req, res) => {
        const data = req.body;
        res.end(data);
      });
      server.listen(3000);
      medium
      A. res.end cannot send data
      B. req.body is undefined without parsing the data
      C. req.body is a function, not a property
      D. Missing require for http module

      Solution

      1. Step 1: Understand how request body works in Node.js

        In Node.js core, req.body is not automatically populated. You must collect data chunks and parse them manually or use middleware.
      2. Step 2: Identify the error in the code

        The code tries to access req.body directly, which will be undefined, causing the response to send undefined.
      3. Final Answer:

        req.body is undefined without parsing the data -> Option B
      4. Quick Check:

        req.body needs manual parsing [OK]
      Hint: req.body is empty unless parsed manually or with middleware [OK]
      Common Mistakes:
      • Assuming req.body is auto-filled in Node.js core
      • Trying to send undefined data without error
      • Confusing res.end usage
      5. You want to log the client's IP address and the requested URL path in a Node.js HTTP server. Which code snippet correctly accesses these properties from the request object?
      hard
      A. console.log(req.connection.remoteAddress, req.path);
      B. console.log(req.ip, req.path);
      C. console.log(req.address, req.route);
      D. console.log(req.socket.remoteAddress, req.url);

      Solution

      1. Step 1: Identify how to get client IP in Node.js

        The client IP is accessible via req.socket.remoteAddress or req.connection.remoteAddress. The req.socket is the modern standard.
      2. Step 2: Identify how to get URL path

        The URL path is stored in req.url. Other options like req.path or req.route are not standard in Node.js core.
      3. Step 3: Compare options

        console.log(req.socket.remoteAddress, req.url); uses req.socket.remoteAddress and req.url, which is correct and modern.
      4. Final Answer:

        console.log(req.socket.remoteAddress, req.url); -> Option D
      5. Quick Check:

        IP = req.socket.remoteAddress, URL = req.url [OK]
      Hint: Use req.socket.remoteAddress and req.url for IP and path [OK]
      Common Mistakes:
      • Using req.ip which is Express-specific
      • Using req.path which is not in Node.js core
      • Trying to access req.address or req.route which don't exist