node.js创建服务,发送请求后返回数据

1.引入http模块

var http = require('http');

2.创建服务

var server = http.createServer();

3.绑定request事件

server.on('request',function(req,res){
    // req.url 是访问的地址
    if(req.url === '/login'){
        // req.write()在页面上返回数据
        res.write('login')
        // 返回数据后使用end,不然不能返回数据
        res.end()
    }else{
        res.write('no login')
        res.end()
    }
})

4.监听端口

server.listen(3000,function(){
    console.log('启动成功,可通过http://localhost:3000 访问');
})

在浏览器输入:http://localhost:3000/login

页面上显示内容

返回内容也可以直接这么写,直接返回end里面的内容

 if(req.url === '/login'){
        res.end('is login') // 调用end方法并返回内容
    }

 需要注意的问题:

res.end() 只能返回字符串或者二进制数据

 if(req.url === '/person'){
        var person = [
            {name:'zs',age:12},
            {name:'ls',age:13},
        ]
        // res.end()只能传入字符串或者二进制数据, 不能传入数字,布尔值,所以需要调用下JSON.stringify()
        res.end(JSON.stringify(person)) // 直接返回内容并调用end方法
    }

 完整代码:

// 引入http模块
var http = require('http');
// 创建服务 createServer()
var server = http.createServer();
// on绑定request事件
server.on('request',function(req,res){
    // req.url 是访问的地址
    if(req.url === '/login'){
        // req.write()在页面上返回数据
        res.write('login')
        // 返回数据后使用end,不然不能返回数据
        res.end()
    }else{
        res.write('no login')
        res.end()
    }
})
// 监听端口
server.listen(3000,function(){
    console.log('启动成功,可通过http://localhost:3000 访问');
})
原文地址:https://www.cnblogs.com/luguankun/p/12594683.html