node.js学习日记——(7)

来源:互联网 发布:淘宝首页焦点图在哪里 编辑:程序博客网 时间:2024/04/29 16:59

RESTful API

什么是 REST?

REST即表述性状态传递(英文:Representational State Transfer,简称REST)
表述性状态转移是一组架构约束条件和原则。
REST是设计风格而不是标准。

以下为 REST 基本架构的四个方法:

  • GET - 用于获取数据。
  • PUT - 用于添加数据。
  • DELETE - 用于删除数据。
  • POST - 用于更新或添加数据。

RESTful Web Services

Web service是一个平台独立的,低耦合的,自包含的、基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述、发布、发现、协调和配置这些应用程序,用于开发分布式的互操作的应用程序。
基于 REST 架构的 Web Services 即是 RESTful。

创建RESTful

创建一个代表用户信息的 json 数据资源文件 user.json

{   "user1" : {      "name" : "mahesh",      "password" : "password1",      "profession" : "teacher",      "id": 1   },   "user2" : {      "name" : "suresh",      "password" : "password2",      "profession" : "librarian",      "id": 2   },   "user3" : {      "name" : "ramesh",      "password" : "password3",      "profession" : "clerk",      "id": 3   }}

获取用户列表

URI:listUsers
方法:GET
发送内容:空
结果:显示所有用户列表

var express = require('express');var app = express();var fs = require("fs");app.get('/listUsers', function (req, res) {   fs.readFile( __dirname + "/" + "user.json", 'utf8', function (err, data) {       console.log( data );       res.end( data );   });})var server = app.listen(8081)

这里写图片描述

添加用户

URI:addUser
方法:POST
发送内容:JSON 字符串
结果:添加新用户

var express = require('express');var app = express();var fs = require("fs");//添加的新用户数据var user = {   "user4" : {      "name" : "mohit",      "password" : "password4",      "profession" : "teacher",      "id": 4   }}app.get('/addUser', function (req, res) {   // 读取已存在的数据   fs.readFile( __dirname + "/" + "user.json", 'utf8', function (err, data) {       data = JSON.parse( data );       data["user4"] = user["user4"];       console.log( data );       res.end( JSON.stringify(data));   });})var server = app.listen(8081)

这里写图片描述

删除用户

URI: deleteUser
方法:DELETE
发送内容:JSON 字符串
结果:删除用户

var express = require('express');var app = express();var fs = require("fs");var id = 2;app.get('/deleteUser', function (req, res) {   // First read existing users.   fs.readFile( __dirname + "/" + "user.json", 'utf8', function (err, data) {       data = JSON.parse( data );       delete data["user" + id];       console.log( data );       res.end( JSON.stringify(data));   });})var server = app.listen(8081)

这里写图片描述

查看用户

URI::id
方法:GET
发送内容:空
结果: 显示用户详细信息

var express = require('express');var app = express();var fs = require('fs');app.get('/:id',function(req,res){    fs.readFile(__dirname + "/" + "user.json", 'utf8',function(err,data){        data = JSON.parse( data );       var user = data["user" + req.params.id]        console.log( user );       res.end( JSON.stringify(user));    })})app.listen(8081);

这里写图片描述

0 0