Follow

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use
Contact

Local Host is not sending any data

Whenever i ran this node server on Port "8000"

const http=require('https')
const PORT=8000

const server=http.createServer()

server.on('request',(req,res)=>{

    if (req.url==='friend'){

        res.writeHead(200,{
            'Content-Type':'text/plain',
        })
    
        res.end(JSON.stringify({
            id:1,
            name:'Sir Issac Newton',
        }))

    }

    if (req.url==='foe'){
        res.writeHead(200,{
            'Content-Type':'text/plain',
        })

        res.end('The Enemy is Ego Bro')
    }


})


server.listen(PORT,()=>{
    console.log(`the respnse is exectued at ${PORT}`)
})

i get an error on the Borwser which says:

localhost didn’t send any data.
ERR_EMPTY_RESPONSE

MEDevel.com: Open-source for Healthcare and Education

Collecting and validating open-source software for healthcare, education, enterprise, development, medical imaging, medical records, and digital pathology.

Visit Medevel

i try to change ports but still it shows this error.Please what should i do and explain me what this error is. Thank you!

>Solution :

This code has 3 problems.

  1. You should change const http=require('https') to const http=require('http'). If you want to use HTTPS please see the nodejs document for how to configure the https server

  2. In nodejs HTTP request URL start with / and your condition statement does not work

  3. Cuz request URL does not match with the condition statement server does not respond any things and this error happens.

You should change code like that:

const http=require('http')
const PORT=8000

const server=http.createServer()

server.on('request',(req,res)=>{

    if (req.url==='/friend'){

        res.writeHead(200,{
            'Content-Type':'text/plain',
        });
    
        res.end(JSON.stringify({
            id:1,
            name:'Sir Issac Newton',
        }));

       return;
    }

    if (req.url==='/foe'){
        res.writeHead(200,{
            'Content-Type':'text/plain',
        });

        res.end('The Enemy is Ego Bro');

        return;
    }

    res.writeHead(400,{
        'Content-Type':'text/plain',
    });

    res.end('URL not match');
})


server.listen(PORT,()=>{
    console.log(`the respnse is exectued at ${PORT}`)
})
Add a comment

Leave a Reply

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use

Discover more from Dev solutions

Subscribe now to keep reading and get access to the full archive.

Continue reading