0

我正在使用 Mashery 的 iodocs 作为我的 REST API 的开发人员前端。我的 API 是用 Node / Express 编写的,并使用 PassportJS 对用户进行身份验证(本地策略)。我的实现要求用户使用 /login 端点,传入用户名和密码。然后,Passport 将用户序列化到一个 cookie 中,这样后续的请求就不需要登录了。

使用 iodocs 时,Passport 设置的 cookie(“connect.sid”)不会在后续请求中传回。

有没有办法做到这一点?IODocs 是否支持以这种方式工作的身份验证方法?

4

1 回答 1

1

Cookie 将遍历端口。您可能遇到的一个问题是 I/O Docs 也设置了“connect.sid”,因为它使用的是 Express session.js 中间件模块,因此 cookie 值可能会被覆盖。

尝试在会话初始化程序中使用不同的 cookie 名称更新 I/O Docs app.js —— 设置“key”值:

app.use(express.session({
    secret: config.sessionSecret,
    key: 'iodocs.connect.sid',
    store:  new RedisStore({
        'host':   config.redis.host,
        'port':   config.redis.port,
        'pass':   config.redis.password,
        'maxAge': 1209600000
    })
}));
于 2013-03-04T04:22:20.370 回答