title: Verifying roles & authentication with Passport.js
body: <p>So I'd like to make some routes in an API that will show different data based on the user role, defined in MongoDB.  Here's a sampling of what I have right now, it works...</p>
  
  <pre><code>router.get('/test', passport.authenticate('bearer', {session: false}), function (req, res) {
      if (req.user.role == "premium") {
          return res.send('you can see this content');
      }
      else {
          return res.send('you can not see this content');
      }
  })
  </code></pre>
  
  <p>However, the end goal is to present at least <strong>something</strong> to the user, even if they're not logged in or authenticated with the right kind of role.</p>
  
  <pre><code>router.get('/test', passport.authenticate('bearer', {session: false}), function (req, res) {
      if (req.user.role == "premium") {
          return res.send('this is premium content');
      }
      else {
          // could be hit by another role, or no user at all
          return res.send([some truncated version of the premium content]);
      }
  })
  </code></pre>
  
  <p>Which I would think I'd figure out how to work, but I don't know how to specify the same route which possibly could be hit without any Authorization header in the request.</p>
  
  <p>Is this possible in Passport.js/Express?</p>