因此,我对此进行了大量研究,但遇到了一些问题。
router.post('/register', async (req, res) => {
const newUser = await usersDb();
// Define the user
const email = req.body.email;
const username = req.body.username;
const password = req.body.password;
const confirmPassword = req.body.confirmPassword;
// Start user already exist check
let userNameCheck = await newUser.findOne({ 'username': username});
req.check('email', 'Email is not valid.').isEmail()
.custom(async value => {
let emailCheck = await newUser.findOne({ 'email': value });
console.log(emailCheck);
console.log('Hmmm')
if (emailCheck !== null) {
return true;
} else {
return false;
}
}).withMessage('Email is already …Run Code Online (Sandbox Code Playgroud) 问题是当我登录时,passport 会多次运行其反序列化功能。虽然这对我知道的事情没有任何影响。让它这样做可能会在以后的道路上出现问题。这是日志:
Bloodmorphed has been Serialized
Bloodmorphed has been deserialized
Bloodmorphed has been deserialized
Bloodmorphed has been deserialized
Bloodmorphed has been deserialized
Bloodmorphed has been deserialized
Bloodmorphed has been deserialized
Run Code Online (Sandbox Code Playgroud)
这是护照:
/*jshint esversion: 6 */
const LocalStrategy = require('passport-local').Strategy;
const db = require('../config/db');
const bcrypt = require('bcryptjs');
let io = require('./io');
module.exports = (passport) => {
// =========================================================================
// passport session setup ==================================================
// =========================================================================
// used to serialize the user for the session
passport.serializeUser((user, done) => {
console.log(user.username + …Run Code Online (Sandbox Code Playgroud) 好吧,所以我绝对感到困惑。我尝试了几种方法来对此进行测试,我尝试了以下方法:
if (msg.channel.isDM) ... Produced undefined
if (msg.isDM) ... Produced undefined
if (msg.channel.DMChannel.isDM) ... produced undefined
if (msg.DMChannel) ... produced undefined
if (msg.channel.DMChannel.dm) ... produced undefined
if (msg.channel.dm) ... produced undefined
Run Code Online (Sandbox Code Playgroud)
msg在控制台中进行制作之后,我已经尝试了所有方法,并尝试破译了执行此操作的位置。甚至文档在哪里也不很清楚,可以在此处进行检查。我看了看多个“解决方案”,它们只是喷出来<message>.channel.dm,好吧……那是行不通的。
编辑:看来确实是<message>.isDM...。但是,在我的命令中这不起作用。当我console.log(msg)产生true预期的数组时,可以在数组中找到isDM 。但是,这样做console.log(msg.isDM)是打印出来的undefined……这似乎很奇怪,因为它显然已定义。
所以,我在 Windows 上很容易做到这一点,这并不奇怪。但我更关心在生产 Linux 服务器上运行它。
有没有一种方法可以让 Access Runtime 2013 在基于 Linux 的系统上工作,而不会抛出一些奇怪的方法。如果没有,那么我将不得不重新考虑我的计划。
就像代码库一样,这就是我正在做的事情:
const ADODB = require('node-adodb');
ADODB.debug = true;
//Bring in LUT Database
const LUTDB = ADODB.open(
'Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Database1.accdb;Persist Security Info=False'
);
LUTDB.query('SELECT * FROM Table1')
.then(data => {
console.log(data);
})
.catch(err => {
console.log(err);
});
Run Code Online (Sandbox Code Playgroud) 我收到 400 错误请求错误。有时有效,有时无效。在电话上,它似乎更有效。我不确定这笔交易是什么,但这很令人恼火。
server {
listen 80;
listen [::]:80;
server_name url url;
return 301 https://$host$request_uri;
}
server {
# SSL configuration
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name url url;
ssl on;
ssl_certificate /etc/ssl/certs/cert.pem;
ssl_certificate_key /etc/ssl/private/key.pem;
ssl_client_certificate /etc/ssl/certs/cloudflare.crt;
ssl_verify_client on;
location / {
proxy_pass http://localhost:8080;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
Run Code Online (Sandbox Code Playgroud) 我的bcrypt存在问题,我不确定为什么。这是我的基本注册路线代码:
const express = require('express');
const router = express.Router();
const bcrypt = require('bcryptjs');
const passport = require('passport');
// Register
router.post('/register', function(req, res){
req.checkBody('username', 'Username is Required').notEmpty();
req.checkBody('kingname', 'Kingdom Name is Required').notEmpty();
req.checkBody('email', 'E-Mail is Required').notEmpty();
req.checkBody('password', 'Password is Required').notEmpty();
req.checkBody('password2', 'Passwords do not match').equals(req.body.password);
var errors = req.validationErrors();
if(errors) {
res.render('index', {
errors: errors
});
} else {
var newUser = {
username: req.body.username,
kingname: req.body.kingname,
email: req.body.email,
password: req.body.password,
password2: req.body.password2
}
bcrypt.getSalt(10, function(err, salt){
bcrypt.hash(newUser.password, salt, function(err, hash){ …Run Code Online (Sandbox Code Playgroud) node.js ×6
bcrypt ×1
certificate ×1
cloudflare ×1
discord.js ×1
ms-access ×1
nginx ×1
passport.js ×1