all files / express-stormpath/lib/middleware/ revoke-tokens.js

26.67% Statements 4/15
0% Branches 0/6
0% Functions 0/2
26.67% Lines 4/15
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35                                                             
'use strict';
 
var Cookies = require('cookies');
var helpers = require('../helpers');
 
/**
 * Revokes any tokens currently attached to the request.
 *
 * @param {Object} req - The http request.
 * @param {Object} res - The http response.
 */
module.exports = function (req, res) {
  var cookies = new Cookies(req, res);
 
  var config = req.app.get('stormpathConfig');
  var logger = req.app.get('stormpathLogger');
 
  function noop(err) {
    if (err) {
      logger.error(err);
    }
  }
 
  var accessTokenJwt = cookies.get(config.web.accessTokenCookie.name);
  var refreshTokenJwt = cookies.get(config.web.refreshTokenCookie.name);
 
  if (accessTokenJwt) {
    helpers.revokeToken.revokeAccessToken(config, accessTokenJwt, noop);
  }
 
  if (refreshTokenJwt) {
    helpers.revokeToken.revokeRefreshToken(config, refreshTokenJwt, noop);
  }
};