Saml 策略验证回调没有被调用

问题描述

根据passportjs 文档,应该调用verifier 函数。 但我没有看到这个回调。

我正在用 okta 测试这个。在 okta 中,应用程序配置为将 saml 响应发送到 /fromokta okta 正在重定向到 /fromokta 我错过了什么?

const saml = require('passport-saml').Strategy;

var strategy = new saml({
    entryPoint: "<some oktka entiry point>",issuer: "http://www.okta.com/foobar",protocol: "http://"
    
},(profile,done) => {
    console.log(">>>> callback from okta");
    console.log(profile);
    done(profile)
})

app.post('/login',function(req,res) {
    passport.authenticate(
        'saml',{
            //successRedirect: '/success',failureRedirect: '/'
        }
    )}
)

app.post('/fromokta',resp){
    // this gets called
})

解决方法

这很可能意味着您的 POST /login 路由永远不会收到请求。查看网络请求,看看是否确实有 POST /login 到 URL,确保协议也相同(http 和 https)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...