node.js创建服务,发送请求后返回数据
Posted 山石
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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 访问\'); })
以上是关于node.js创建服务,发送请求后返回数据的主要内容,如果未能解决你的问题,请参考以下文章
如何将 JQuery AJAX 请求中的数据发送到 Node.js 服务器
通过 POST 请求将数据从 node.js 服务器发送到 node.js 服务器