Javascript 在sails.js下使用SSL时,Passport.js无法初始化
我正在使用Sails.js(v0.9.4)和passport(本地策略)。一切正常。 我需要在SSL后面设置Sails.js。因此,我: (我被迫使用8080作为SSL端口) 我启动风帆,它的响应正常,至少那些控制器是打开的。但是,当我尝试登录并开始验证passport时,我会得到以下信息:Javascript 在sails.js下使用SSL时,Passport.js无法初始化,javascript,node.js,express,sails.js,passport.js,Javascript,Node.js,Express,Sails.js,Passport.js,我正在使用Sails.js(v0.9.4)和passport(本地策略)。一切正常。 我需要在SSL后面设置Sails.js。因此,我: (我被迫使用8080作为SSL端口) 我启动风帆,它的响应正常,至少那些控制器是打开的。但是,当我尝试登录并开始验证passport时,我会得到以下信息: module.exports = { port: 8080, express: { customMiddleware: function (app) { app
module.exports = {
port: 8080,
express: {
customMiddleware: function (app) {
app.use(passport.initialize());
app.use(passport.session());
app.configure(function () {
app.use(express.json());
app.use(express.urlencoded());
app.use(express.multipart())
});
},
serverOptions : {
key: fs.readFileSync(mc.httpsBindings.key),
cert: fs.readFileSync(mc.httpsBindings.cert)
}}
错误:passport.initialize()中间件未使用
在IncomingMessage.req.login.req.login(D:\Development\TRYDEV\try server\try server\node\u modules\passport\lib\http\request.js:44:34)
位于D:\Development\TRYDEV\try server\try server\api\controllers\AuthController.js:37:17
在Strategy.Strategy.success(D:\Development\TRYDEV\wrg server\wrg server\node\u modules\passport\lib\middleware\authenticate.js:194:18)
验证时(D:\Development\TRYDEV\try server\try server\node\u modules\passport local\lib\passport local\strategy.js:83:10)
位于D:\Development\TRYDEV\try server\try server\api\services\passport.js:89:28
位于D:\Development\TRYDEV\try server\try server\node\u modules\bcryptjs\bcrypt.min.js:40:101
位于D:\Development\TRYDEV\try server\try server\node\u modules\bcryptjs\bcrypt.min.js:11:441
在d处(d:\Development\TRYDEV\try server\try server\node\u modules\bcryptjs\bcrypt.min.js:9:302)
在进程中。_tickDomainCallback(node.js:459:13)
这是我的本地文件的内容:
var fs = require('fs');
module.exports = {
port: 8080,
express: { serverOptions : {
key: fs.readFileSync("ssl/5934652-localhost.key"),
cert: fs.readFileSync("ssl/5934652-localhost.cert")
}} }
为什么我更改local.js时它不起作用,我的意思是将其更改为https?在您的local.js文件中,执行以下操作:
module.exports = {
port: 8080,
express: {
customMiddleware: function (app) {
app.use(passport.initialize());
app.use(passport.session());
app.configure(function () {
app.use(express.json());
app.use(express.urlencoded());
app.use(express.multipart())
});
},
serverOptions : {
key: fs.readFileSync(mc.httpsBindings.key),
cert: fs.readFileSync(mc.httpsBindings.cert)
}}
它如何解决OP的问题?你能为将来的读者补充一些关于你的解决方案的细节吗?