ERR_EMPTY_RESPONSE /无法获取node.js

超级购物篮

我试图制作一个简单的登录/注册页面,但是我的获取代码导致错误(ERR_EMPTY_RESPONSE和TypeError:无法获取)。我尝试了console.log(“ can login”)来查看代码是否会返回某些内容,确认它可以工作,但是,两个函数均未返回任何内容。我是新来的,所以请怜悯我

router.post("/register", (req, res) => {
    console.log(JSON.stringify(req.body))    
    let {username, password} = req.body;
    let err = validate.username(username);
    if(err) throw err;
    err = validate.password(password);
    if(err) throw err;
        db.collection("users").find({username: username}), function(err, username){
            if(err){
                throw err;
            } if(username){
                console.log(username);
                console.log("Username in use!");
            } else {
            console.log("Not in use!");
            db.collection("users").insertOne({ "username": username.value, "password": password.value });
            }  
        }
    }); 

    router.post("/login", (req, res) => {
        console.log(JSON.stringify(req.body))    
        let {username, email, password} = req.body;
        db.collection("users").find({username: username, password: password}), function(err, results){
            if(err){
            throw err;
            } if(results.length > 0){
            console.log("Can login");
            } else {
            throw("Username and/or Password is incorrect!");
            }
        }
    }); 


<script>
        function register() {
            let data = { 
                username: document.querySelector("#user").value,
                password: document.querySelector("#pass").value,
            }
        
        

            console.log(JSON.stringify(data))

            fetch("/api/register", {
                method: "POST",
                headers: {
                    'Accept': 'application/json',
                    'Content-Type': 'application/json'
                },
                body: JSON.stringify(data),
            
            }).then((res) => {
                console.log(res.json());
            });        
        }
        function login() {
            let data = { 
                username: document.querySelector("#userlogin").value,
                password: document.querySelector("#passlogin").value,
            }

        fetch("/api/login", {
                method: "POST",
                headers: {
                    'Accept': 'application/json',
                    'Content-Type': 'application/json'
                },
                body: JSON.stringify(data),
            
            }).then((res) => {
                console.log(res.json());
            });
        }
    </script>
</head>

<body>
    <h1>Register:</h1>
   
    <input autocomplete="username" id = "user" placeholder="username">
    <input autocomplete="current-password" id = "pass" type = "password "placeholder="password">
    <button onclick="register()">Register</button>
    <br>
    <br>
    <br>
    <br>
    <input autocomplete="username" id = "userlogin" placeholder="username">
    <input autocomplete="current-password" id = "passlogin" type = "password" placeholder="password">
    <button onclick="login()">Login</button>
 
</body>

任何帮助是极大的赞赏!谢谢 :)

EOL

您没有在login-handler中发送任何响应,因此在客户端会收到一个空响应错误。将其更改为:

router.post("/login", (req, res) => {
        console.log(JSON.stringify(req.body))    
        let {username, email, password} = req.body;
        db.collection("users").find({username: username, password: password}), function(err, results){
            if(err){
               res.status(500).json({errorMsg: err.message});
            } else if(results.length > 0){
               res.json({ // send whatever you need here });
            } else {
               res.status(401).json({errorMsg: "wrong user/password"});
            }
        }
    }); 

在客户端代码中,您还应该处理错误情况:

fetch("/api/login", { ... })
            .then((res) => {
                console.log(res.json());
            }).catch(err) => {
              // handle error here
            })

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Node.js 的代理请求:net::ERR_EMPTY_RESPONSE

来自分类Dev

在 Node.js 中使用多方包的 ERR_EMPTY_RESPONSE 错误

来自分类Dev

在angular-js框架中将http请求发布到本地主机时获取ERR_EMPTY_RESPONSE

来自分类Dev

在本地Apache设置上获取net :: ERR_EMPTY_RESPONSE

来自分类Dev

无法加载资源:net :: ERR_EMPTY_RESPONSE用于图像

来自分类Dev

无法加载资源:net :: ERR_EMPTY_RESPONSE用于图像

来自分类Dev

本地主机上的HTTP无法与DNS A记录和端口转发一起使用(ERR_EMPTY_RESPONSE)

来自分类Dev

Dockerizing React App但ERR_EMPTY_RESPONSE

来自分类Dev

ERR_EMPTY_RESPONSE尝试访问phpmyadmin时

来自分类Dev

VueJS Nginx和docker设置-本地ERR_EMPTY_RESPONSE

来自分类Dev

Wordpress-长内容时出现ERR_EMPTY_RESPONSE

来自分类Dev

000webhost api 返回 net::ERR_EMPTY_RESPONSE

来自分类Dev

Docker - WordPress - 本地主机 ERR_EMPTY_RESPONSE

来自分类Dev

apache 配置错误和 ERR_EMPTY_RESPONSE

来自分类Dev

net::ERR_EMPTY_RESPONSE 用于 XMLHttpRequest POST Javascript

来自分类Dev

Node.JS + Apache-无法获取

来自分类Dev

Node.js中的“无法获取/”错误

来自分类Dev

Node.js 中的“无法获取/”错误

来自分类Dev

NODE JS 无法获取/错误发生无法修复

来自分类Dev

Node.js请求-无法获取REST响应(JSON)的属性

来自分类Dev

无法通过Node.js从Lambda获取Amazon CloudWatch Logs

来自分类Dev

无法获取api路由(node.js,快速)

来自分类Dev

Node.js无法获取生成的进程的输出

来自分类Dev

无法在Node.js / Express中获取保存的图像

来自分类Dev

无法使用Node.js从Mongodb中获取数据

来自分类Dev

使用Heroku无法在Node js中获取/错误

来自分类Dev

无法在node.js中获取GPIO引脚值

来自分类Dev

更新查询无法在Node.js中正确获取值

来自分类Dev

Node.js APT无法从mongodbLab获取数据

Related 相关文章

  1. 1

    Node.js 的代理请求:net::ERR_EMPTY_RESPONSE

  2. 2

    在 Node.js 中使用多方包的 ERR_EMPTY_RESPONSE 错误

  3. 3

    在angular-js框架中将http请求发布到本地主机时获取ERR_EMPTY_RESPONSE

  4. 4

    在本地Apache设置上获取net :: ERR_EMPTY_RESPONSE

  5. 5

    无法加载资源:net :: ERR_EMPTY_RESPONSE用于图像

  6. 6

    无法加载资源:net :: ERR_EMPTY_RESPONSE用于图像

  7. 7

    本地主机上的HTTP无法与DNS A记录和端口转发一起使用(ERR_EMPTY_RESPONSE)

  8. 8

    Dockerizing React App但ERR_EMPTY_RESPONSE

  9. 9

    ERR_EMPTY_RESPONSE尝试访问phpmyadmin时

  10. 10

    VueJS Nginx和docker设置-本地ERR_EMPTY_RESPONSE

  11. 11

    Wordpress-长内容时出现ERR_EMPTY_RESPONSE

  12. 12

    000webhost api 返回 net::ERR_EMPTY_RESPONSE

  13. 13

    Docker - WordPress - 本地主机 ERR_EMPTY_RESPONSE

  14. 14

    apache 配置错误和 ERR_EMPTY_RESPONSE

  15. 15

    net::ERR_EMPTY_RESPONSE 用于 XMLHttpRequest POST Javascript

  16. 16

    Node.JS + Apache-无法获取

  17. 17

    Node.js中的“无法获取/”错误

  18. 18

    Node.js 中的“无法获取/”错误

  19. 19

    NODE JS 无法获取/错误发生无法修复

  20. 20

    Node.js请求-无法获取REST响应(JSON)的属性

  21. 21

    无法通过Node.js从Lambda获取Amazon CloudWatch Logs

  22. 22

    无法获取api路由(node.js,快速)

  23. 23

    Node.js无法获取生成的进程的输出

  24. 24

    无法在Node.js / Express中获取保存的图像

  25. 25

    无法使用Node.js从Mongodb中获取数据

  26. 26

    使用Heroku无法在Node js中获取/错误

  27. 27

    无法在node.js中获取GPIO引脚值

  28. 28

    更新查询无法在Node.js中正确获取值

  29. 29

    Node.js APT无法从mongodbLab获取数据

热门标签

归档