我将尝试使用通行证和sql server进行登录,但在身份验证后显示下一个错误
UnhandledPromiseRejectionWarning:RequestError:无效的对象名称“ Classroom.signUp”。 在handleError(C:\ Users \ Amanda \ Desktop \ Classroom \ node_modules \ mssql \ lib \ tedious.js:551:15) 在emitOne上(events.js:116:13) 在Connection.emit(events.js:211:7) 在解析器。 (C:\ Users \ Amanda \ Desktop \ Classroom \ node_modules \ tedious \ lib \ connection.js:618:16) 在emitOne上(events.js:116:13) 在Parser.emit(events.js:211:7) 在解析器。 (C:\ Users \ Amanda \ Desktop \ Classroom \ node_modules \ tedious \ lib \ token \ token-stream-parser.js:54:15) 在emitOne上(events.js:116:13) 在Parser.emit(events.js:211:7) 在addChunk(C:\ Users \ Amanda \ Desktop \ Classroom \ node_modules \ ready-stream \ lib_stream_visible.js:291:12) (节点:5336)UnhandledPromiseRejectionWarning:未处理的承诺拒绝。引发此错误的原因可能是抛出了一个没有catch块的异步函数,或者是拒绝了一个.catch()无法处理的承诺。 (拒绝ID:3)
我的passporr.js文件:
const passport = require('passport');
const LocalStrategy = require('passport-local').Strategy;
const sql = require('mssql')
const pool = require('../database/conexion');
passport.use('local.signin', new LocalStrategy({
usernameField: 'username',
passwordField: 'passwords',
passReqToCallback: true
},(req, username, passwords, done) => {
console.log(username)
const request= pool.request();
//request.input('username',sql.NVarChar,username);
// request.input('passwords',sql.NVarChar,passwords);
request.query(`SELECT * FROM dbo.signUp WHERE [singUp].
[username]='+@username+' AND [signUp].[passwords]='+@passwords+'`
,(user,err)=>{
done(null, user, req.flash('success', 'Bienvenido'+user.username));
});
}));
passport.serializeUser(function(user, done) {
done(null, user);
});
passport.deserializeUser(async (id, done)=> {
const rows = await pool.query(`SELECT * FROM [Classroom].[signUp] WHERE id =${id}`);
done(null, rows);
});