赞
踩
REST是设计风格而不是标准
总结REST有两个最重要的原则:
1.分离性;交互的客户端和服务器除了RESTful-API没有其他的依赖关系,限制了整个系统的复杂性,促进了各个部分的独立性。
2.无状态性:客户端和服务器之间的交互在请求之间是无状态的,从客户端到服务器的每个请求都必须包含理解请求所必需的信息。基于 REST 架构的 Web Services 即是 RESTful。
满足上面规范的API接口就是RESTful-API。客户端常常通过HTTP方法(GET、POST、PUT、DELETE等),来发送API请求;服务端常常以JSON数据作为响应。
GET - 用于获取数据。
PUT - 用于更新或添加数据。
DELETE - 用于删除数据。
POST - 用于添加数据
高效率的RESTful请求都倾向于使用HTTP GET方法。GET请求的所有信息都携带在请求地址url中。在Node.js里读取request.url可以获得请求的url,我们需要对不同的url做路由处理,返回不同的响应数据
{
"user1" : {
"name" : "mahesh",
"password" : "password1",
"profession" : "teacher",
"id": 1
},
"user2" : {
"name" : "suresh",
"password" : "password2",
"profession" : "librarian",
"id": 2
}
var express = require('express'); var app = express(); var fs = require("fs"); //获取用户列表 app.get('/listUsers', function (req, res) { fs.readFile( __dirname + "/" + "users.json", 'utf8', function (err, data) { console.log( data ); res.end( data ); }); }) //添加的新用户数据 var user = { "user4" : { "name" : "mohit", "password" : "password4", "profession" : "teacher", "id": 4 } } //添加新用户 app.get('/User++', function (req, res) { fs.readFile( __dirname + "/" + "users.json", 'utf8', function (err, data) { data = JSON.parse( data ); data["user4"] = user["user4"]; console.log( data ); res.end( JSON.stringify(data)); }); }) //删除用户 app.get('/User--', function (req, res) { fs.readFile( __dirname + "/" + "users.json", 'utf8', function (err, data) { data = JSON.parse( data ); delete data["user" + 2]; console.log( data ); res.end( JSON.stringify(data)); }); }) //显示用户详情 app.get('/:id', function (req, res) { fs.readFile( __dirname + "/" + "users.json", 'utf8', function (err, data) { data = JSON.parse( data ); var user = data["user" + req.params.id]; console.log( user ); res.end( JSON.stringify(user)); }); }) var server = app.listen(8081, function () { var host = server.address().address; var port = server.address().por; console.log("应用实例,访问地址为 http://%s:%s", host, port); }).
‘/:id’页面回调函数的定义放在最后,否则会影响其他页面,因为其他页面通配‘/:id’。
运行方式:node rest.js
在浏览器中访问 http://127.0.0.1:8081/listUsers ——获取用户列表
在浏览器中访问 http://127.0.0.1:8081/addUser ——添加user4
在浏览器中访问 http://127.0.0.1:8081/deleteUser ——删除user2
在浏览器中访问 http://127.0.0.1:8081/2 ——显示user2
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。