Reactjs 从postgres db获取数据-返回时出错:JSON输入意外结束

Reactjs 从postgres db获取数据-返回时出错:JSON输入意外结束,reactjs,postgresql,express,fetch,Reactjs,Postgresql,Express,Fetch,我试图从数据库中获取数据,但返回时出现错误:JSON输入意外结束 我的服务器获取路径: app.get("/auth/login", async (req, res) => { try { const { email, password } = req.body; const findUser = await pool.query( "SELECT * FROM users WHERE email = $1 AND passwo

我试图从数据库中获取数据,但返回时出现错误:JSON输入意外结束

我的服务器获取路径:

app.get("/auth/login", async (req, res) => {
  try {
    const { email, password } = req.body;
    const findUser = await pool.query(
      "SELECT * FROM users WHERE email = $1 AND password = $2",
      [email, password]
    );
    console.log(findUser, "findUSER");
    res.json(findUser.rows[0]);
  } catch (err) {
    console.error(err.message);
  }
});
以及获取数据的组件:

const Login = () => {
  const [email, setEmail] = useState("");
  const [password, setPassword] = useState("");
  const [user, setUser] = useState([]);

  const login = async () => {
    try {
      const response = await fetch("http://localhost:5000/auth/login");
      const jsonData = await response.json();
      console.log(jsonData, "jsonData");

      setUser(jsonData);
    } catch (err) {
      console.error(err.message);
    }
  };

  return (
    <div>
      <h1>Login</h1>
      <label>Email</label>
      <input
        type="email"
        onChange={(e) => {
          setEmail(e.target.value);
        }}
      />
      <label>password</label>
      <input
        type="password"
        onChange={(e) => {
          setPassword(e.target.value);
        }}
      />
      <button onClick={login}>Log in</button>
    </div>
  );
};
const Login=()=>{
const[email,setEmail]=useState(“”);
const[password,setPassword]=useState(“”);
const[user,setUser]=useState([]);
const login=async()=>{
试一试{
const response=等待获取(“http://localhost:5000/auth/login");
const jsonData=await response.json();
log(jsonData,“jsonData”);
setUser(jsonData);
}捕捉(错误){
控制台错误(错误消息);
}
};
返回(
登录
电子邮件
{
setEmail(例如target.value);
}}
/>
密码
{
设置密码(如目标值);
}}
/>
登录
);
};
你知道可能会有什么问题吗


谢谢

我不确定您使用什么与数据库交互,但我相信“全选自”将始终返回一个数组,这意味着“查找用户”的名称为
foundUsers
在语义上更为正确。如果
findUsers
是数组,则无法访问数组上的行。您需要访问
findUsers[0]

我不确定您正在使用什么与数据库交互,但我相信,select all from将始终返回一个数组,这意味着find user在语义上更正确,名称为
foundUsers
。如果
findUsers
是数组,则无法访问数组上的行。您需要访问
findUsers[0]