You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					
					
						
							43 lines
						
					
					
						
							853 B
						
					
					
				
			
		
		
	
	
							43 lines
						
					
					
						
							853 B
						
					
					
				/*! | 
						|
 * express | 
						|
 * Copyright(c) 2009-2013 TJ Holowaychuk | 
						|
 * Copyright(c) 2013 Roman Shtylman | 
						|
 * Copyright(c) 2014-2015 Douglas Christopher Wilson | 
						|
 * MIT Licensed | 
						|
 */ | 
						|
 | 
						|
'use strict'; | 
						|
 | 
						|
/** | 
						|
 * Module dependencies. | 
						|
 * @private | 
						|
 */ | 
						|
 | 
						|
var setPrototypeOf = require('setprototypeof') | 
						|
 | 
						|
/** | 
						|
 * Initialization middleware, exposing the | 
						|
 * request and response to each other, as well | 
						|
 * as defaulting the X-Powered-By header field. | 
						|
 * | 
						|
 * @param {Function} app | 
						|
 * @return {Function} | 
						|
 * @api private | 
						|
 */ | 
						|
 | 
						|
exports.init = function(app){ | 
						|
  return function expressInit(req, res, next){ | 
						|
    if (app.enabled('x-powered-by')) res.setHeader('X-Powered-By', 'Express'); | 
						|
    req.res = res; | 
						|
    res.req = req; | 
						|
    req.next = next; | 
						|
 | 
						|
    setPrototypeOf(req, app.request) | 
						|
    setPrototypeOf(res, app.response) | 
						|
 | 
						|
    res.locals = res.locals || Object.create(null); | 
						|
 | 
						|
    next(); | 
						|
  }; | 
						|
}; | 
						|
 | 
						|
 |