7*4 2018-05-28 09:07 采纳率: 50%
浏览 11

Ajax发布中的差异

I have one post like this

app.post('/auth', passport.initialize(), passport.authenticate('local', { session: false,scope: [] }), serialize, generateToken, respond);

this is working correctly.

Now I have made above post as a function and calling from different page

accesstokenController.auth = function(req, res) {
  console.log('Here auth called');
    passport.initialize(), passport.authenticate(
      'local', {
        session: false,
        scope: []
      }), serialize, generateToken, respond
  };

and calling this method from differnt rout page.

This is not working means passport.intialize() or passport.authenticate is not being called

Router calling method

var oauth = require("../oauth/accesstoken");
router.post('/auth', function(req, res) {
    oauth.auth(req, res);
});

What's wrong there

Thanks

  • 写回答

1条回答 默认 最新

  • weixin_33695450 2018-05-28 12:47
    关注

    See the express reference for app.method and passing middleware arguments.

    You can export an array of handler functions like so:

    // ./oauth.js
    
    exports.init = [
       // express_session({secret: 'use express-session if you like'),
       // passport.session(),
       passport.initialize()
    ];
    
    exports.login = [
       passport.authenticate('local', options),
       serialize,
       generateToken,
       (req, res) => res.send('you are logged in')
    ];
    

    and use them in your app/router:

    // ./app.js
    
    const auth = require('./oauth');
    
    app.use(auth.init);
    app.post('/login', auth.login);
    

    To follow the passport docs,
    you should configure the module and call passport.initalize (a function returning an express middleware function, hence the brackets) separately with app.use

    评论

报告相同问题?

悬赏问题

  • ¥15 unity第一人称射击小游戏,有demo,在原脚本的基础上进行修改以达到要求
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看
  • ¥15 关于#Java#的问题,如何解决?
  • ¥15 加热介质是液体,换热器壳侧导热系数和总的导热系数怎么算
  • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
  • ¥15 cmd cl 0x000007b
  • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
  • ¥500 火焰左右视图、视差(基于双目相机)
  • ¥100 set_link_state
  • ¥15 虚幻5 UE美术毛发渲染