File tree Expand file tree Collapse file tree 4 files changed +30
-1
lines changed
Expand file tree Collapse file tree 4 files changed +30
-1
lines changed Original file line number Diff line number Diff line change 6363 "cookie-parser" : " ^1.3.4" ,
6464 "es5-shim" : " ^4.1.0" ,
6565 "eslint-config-loopback" : " ^1.0.0" ,
66+ "express-session" : " ^1.14.0" ,
6667 "grunt" : " ^1.0.1" ,
6768 "grunt-browserify" : " ^5.0.0" ,
6869 "grunt-cli" : " ^1.2.0" ,
Original file line number Diff line number Diff line change 33// This file is licensed under the MIT License.
44// License text available at https://opensource.org/licenses/MIT
55
6+ var g = require ( 'strong-globalize' ) ( ) ;
7+
68module . exports = function ( ) {
79 throw new Error ( g . f (
810 '%s middleware was removed in version 3.0. See %s for more details.' ,
Original file line number Diff line number Diff line change @@ -125,7 +125,7 @@ function token(options) {
125125 req . accessToken = token || null ;
126126 rewriteUserLiteral ( req , currentUserLiteral ) ;
127127 var ctx = req . loopbackContext ;
128- if ( ctx ) ctx . set ( 'accessToken' , token ) ;
128+ if ( ctx && ctx . active ) ctx . set ( 'accessToken' , token ) ;
129129 next ( err ) ;
130130 } ) ;
131131 } ;
Original file line number Diff line number Diff line change @@ -8,6 +8,8 @@ var LoopBackContext = require('loopback-context');
88var contextMiddleware = require ( 'loopback-context' ) . perRequest ;
99var loopback = require ( '../' ) ;
1010var extend = require ( 'util' ) . _extend ;
11+ var session = require ( 'express-session' ) ;
12+
1113var Token = loopback . AccessToken . extend ( 'MyToken' ) ;
1214var ds = loopback . createDataSource ( { connector : loopback . Memory } ) ;
1315Token . attachTo ( ds ) ;
@@ -509,6 +511,30 @@ describe('app.enableAuth()', function() {
509511 done ( ) ;
510512 } ) ;
511513 } ) ;
514+
515+ // See https://github.com/strongloop/loopback-context/issues/6
516+ it ( 'checks whether context is active' , function ( done ) {
517+ var app = loopback ( ) ;
518+
519+ app . enableAuth ( ) ;
520+ app . use ( contextMiddleware ( ) ) ;
521+ app . use ( session ( {
522+ secret : 'kitty' ,
523+ saveUninitialized : true ,
524+ resave : true ,
525+ } ) ) ;
526+ app . use ( loopback . token ( { model : Token } ) ) ;
527+ app . get ( '/' , function ( req , res ) { res . send ( 'OK' ) ; } ) ;
528+ app . use ( loopback . rest ( ) ) ;
529+
530+ request ( app )
531+ . get ( '/' )
532+ . set ( 'authorization' , this . token . id )
533+ . set ( 'cookie' , 'connect.sid=s%3AFTyno9_MbGTJuOwdh9bxsYCVxlhlulTZ.' +
534+ 'PZvp85jzLXZBCBkhCsSfuUjhij%2Fb0B1K2RYZdxSQU0c' )
535+ . expect ( 200 , 'OK' )
536+ . end ( done ) ;
537+ } ) ;
512538} ) ;
513539
514540function createTestingToken ( done ) {
You can’t perform that action at this time.
0 commit comments