瀏覽代碼

Feature 54 & 55 (#56)

pull/60/head
radivoje.milutinovic 3 年之前
父節點
當前提交
0c2de2a622
共有 5 個文件被更改,包括 10 次插入19 次删除
  1. 1
    0
      .gitignore
  2. 0
    14
      src/database/models/user.js
  3. 3
    2
      src/endpoints/user.js
  4. 2
    2
      src/logging/loggerWinston.js
  5. 4
    1
      src/validators/users.js

+ 1
- 0
.gitignore 查看文件

@@ -1,2 +1,3 @@
node_modules/
loggerFiles/
public/loggerFiles

+ 0
- 14
src/database/models/user.js 查看文件

@@ -1,5 +1,4 @@
const mongoose = require('mongoose')
const Joi = require('joi')

const userSchema = new mongoose.Schema({
name: {
@@ -24,19 +23,6 @@ const userSchema = new mongoose.Schema({
}]
})

userSchema.statics.joiValidate = async function(obj) {
const schema = Joi.object({
name: Joi.string().min(2).required(),
password: Joi.string().min(8).regex(/[a-zA-Z0-9]{3,30}/).required(),
email: Joi.string().email().required(),
role: Joi.string()
})

const validation = schema.validate(obj);
return validation.error
}


// userSchema.pre('save', async function(next) {
// const user = this
// console.log('pre hash: ' + user.password)

+ 3
- 2
src/endpoints/user.js 查看文件

@@ -35,7 +35,7 @@ const createUser = async (req, res, next) => {
return res.status(400).send('Object cant be empty')
}

const err = await User.joiValidate(userModel)
const err = getUserValidator.validate(userModel).error
if (err) {
return res.status(400).send(err.message)
}
@@ -57,7 +57,8 @@ const updateUser = async (req, res, next) => {
if (Object.entries(objBody).length == 0) {
return res.status(400).send('Invalid input parameters')
}
const err = await User.joiValidate(objBody)

const err = getUserValidator.validate(objBody).error
if (err) {
return res.status(400).send(err.message)
}

+ 2
- 2
src/logging/loggerWinston.js 查看文件

@@ -6,8 +6,8 @@ const loggerWinston = winston.createLogger({
format: winston.format.json(),
defaultMeta: { service: 'user-service' },
transports: [
new winston.transports.File({ filename: 'loggerFiles/error.log', level: 'error' }),
new winston.transports.File({ filename: 'loggerFiles/all.log', level: 'silly' }),
new winston.transports.File({ filename: '../public/loggerFiles/error.log', level: 'error' }),
new winston.transports.File({ filename: '../public/loggerFiles/all.log', level: 'silly' }),
],
});


+ 4
- 1
src/validators/users.js 查看文件

@@ -2,7 +2,10 @@ const Joi = require("joi");

const schema = {
getUserValidator: Joi.object({
id: Joi.string().required()
name: Joi.string().min(2).required(),
password: Joi.string().min(8).regex(/[a-zA-Z0-9]{3,30}/).required(),
email: Joi.string().email().required(),
role: Joi.string()
})
}


Loading…
取消
儲存