无效的 prisma.user.findUnique() 调用

zer*_*ero 3 javascript node.js prisma

我似乎找不到调用中的错误是什么

function findUser(req, res) {
    const username = req.body.username;
    
    prisma.user.findUnique({
        where: { username: username },
        select: { username: true }
    })
    .then(data => {
        res.send({
            'userExists': data ? true : false
        })
    })
    .catch(err => {
        res.status(500).send({
           message: err.message || "Some error occurred while retrieving user."
        })
    })
    .finally(async () => { await prisma.$disconnect()});

Run Code Online (Sandbox Code Playgroud)
// schema.prisma

    datasource db {
      provider = "postgresql"
      url      = env("DATABASE_URL")
    }

    generator client {
      provider = "prisma-client-js"
    }

    model User {
      id Int @default(autoincrement()) @id
      username String @unique
      password String
      salt String
      createdAt DateTime @default(now())
      updatedAt DateTime @updatedAt
    }
Run Code Online (Sandbox Code Playgroud)

小智 5

从 Prisma 方面来看,一切正常。问题可能是req.body.username,如果您收到的信息未定义Invalid 'prisma.user.findUnique()' invocation
您必须添加用户名验证,即

if {typeof username !== string} return res.status(404).send('invalid username')
Run Code Online (Sandbox Code Playgroud)