解决方案:
示例代码:
import { PrismaClient } from '@prisma/client'
const prisma = new PrismaClient()
async function getUser(email: string, password: string) {
const user = await prisma.user.findFirst({
where: {
email,
password,
},
})
return user
}
示例代码:
import Joi from 'joi'
const schema = Joi.object({
email: Joi.string().email().required(),
password: Joi.string().min(6).required(),
})
async function createUser(data) {
const validatedData = await schema.validateAsync(data)
const user = await prisma.user.create({
data: validatedData,
})
return user
}
示例代码:
import { escape } from 'html-escaper'
function renderPage(user) {
const escapedUsername = escape(user.username)
return `
Welcome back, ${escapedUsername}!
`
}
示例代码(使用Helmet库设置HTTP标头):
import helmet from 'helmet'
import express from 'express'
const app = express()
app.use(helmet())
参考资料: