Search⌘ K
AI Features

Solution: Add Authorization to a Route Handler

Understand how to apply the decorator pattern to add authorization in Node.js route handlers. Learn to separate authentication logic from business code by creating a wrapper that checks user roles and restricts access, ensuring cleaner and more maintainable endpoint handlers.

Solution explanation

  • Lines 2–4: We define deleteUserHandler, a mock route handler that returns a confirmation string. It doesn’t know anything about authentication or roles—that’s intentional.

  • Lines 7–16: We build the withAuthorization decorator:

    • It wraps the original function fn.

    • It checks whether the user argument has a role of 'admin'. ...