Q. Which namespace contains MiddlewareInterface?

  • (A) TrishulApi\Core\Http
  • (B) TrishulApi\Core\Middleware
  • (C) TrishulApi\Core\Data
  • (D) TrishulApi\Core\App
πŸ’¬ Discuss
βœ… Correct Answer: (B) TrishulApi\Core\Middleware
Explanation: It belongs to Core\Middleware namespace.

Q. Which methods must be implemented in MiddlewareInterface?

  • (A) handle() and process()
  • (B) handle_request() and handle_response()
  • (C) before() and after()
  • (D) request() and response()
πŸ’¬ Discuss
βœ… Correct Answer: (B) handle_request() and handle_response()
Explanation: Both methods are required.

Q. When is handle_request() executed?

  • (A) After response is sent
  • (B) Before controller logic
  • (C) During DB connection
  • (D) After logging
πŸ’¬ Discuss
βœ… Correct Answer: (B) Before controller logic
Explanation: It intercepts request before application logic.

Q. When is handle_response() executed?

  • (A) Before request arrives
  • (B) After request validation
  • (C) Before response is sent to client
  • (D) Before DB query
πŸ’¬ Discuss
βœ… Correct Answer: (C) Before response is sent to client
Explanation: It modifies outgoing response.

Q. What must handle_request() return?

  • (A) Boolean
  • (B) Request object
  • (C) Response object
  • (D) String
πŸ’¬ Discuss
βœ… Correct Answer: (B) Request object
Explanation: Must return Request (possibly modified).

Q. What must handle_response() return?

  • (A) Boolean
  • (B) Request object
  • (C) Response object
  • (D) Array
πŸ’¬ Discuss
βœ… Correct Answer: (C) Response object
Explanation: Must return Response.

Q. What happens if middleware does not return Request/Response?

  • (A) Nothing happens
  • (B) Breaks middleware chain
  • (C) Auto-fix applied
  • (D) Ignored
πŸ’¬ Discuss
βœ… Correct Answer: (B) Breaks middleware chain
Explanation: Chain depends on returned objects.

Q. Which operation is suitable for handle_request()?

  • (A) Add response header
  • (B) Authenticate user
  • (C) Send JSON response
  • (D) Close DB connection
πŸ’¬ Discuss
βœ… Correct Answer: (B) Authenticate user
Explanation: Authentication is done before controller.

Q. Which operation is suitable for handle_response()?

  • (A) Validate input
  • (B) Modify response headers
  • (C) Fetch DB data
  • (D) Parse request body
πŸ’¬ Discuss
βœ… Correct Answer: (B) Modify response headers
Explanation: Used to modify outgoing response.

Q. What does middleware chaining mean?

  • (A) Multiple DB queries
  • (B) Multiple middleware executed sequentially
  • (C) Multiple APIs combined
  • (D) Parallel execution
πŸ’¬ Discuss
βœ… Correct Answer: (B) Multiple middleware executed sequentially
Explanation: Each middleware processes request/response in sequence.