[Node.js]Restful Api

栏目: 编程工具 · 发布时间: 8年前

内容简介:[Node.js]Restful Api

摘要

什么Rest?

REST即表述性状态传递(英文:Representational State Transfer,简称REST)是Roy Fielding博士在2000年他的博士论文中提出来的一种软件架构风格。

表述性状态转移是一组架构约束条件和原则。满足这些约束条件和原则的应用程序或设计就是RESTful。需要注意的是,REST是设计风格而不是标准。REST通常基于使用HTTP,URI,和XML(标准通用标记语言下的一个子集)以及HTML(标准通用标记语言下的一个应用)这些现有的广泛流行的协议和标准。REST 通常使用 JSON 数据格式。

Http方法和RESTful Web Services

REST基本架构使用的http方法有以下四种:GET(用于查询数据)、PUT(修改数据)、DELETE(删除数据)、POST(添加数据)。

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

基于 REST 架构的 Web Services 即是 RESTful。

由于轻量级以及通过 HTTP 直接传输数据的特性,Web 服务的 RESTful 方法已经成为最常见的替代方法。可以使用各种语言(比如 Java 程序、 PerlRubyPythonPHP 和 Javascript[包括 Ajax])实现客户端。

一个例子

这里我们创建Restful api,对用户信息进行增删改查操作。创建users.json作为数据源。

{
    "user1":{
        "name":"wolfy1",
        "age":1
    },
     "user2":{
        "name":"wolfy2",
        "age":2
    }
}

启动,并用浏览器访问

[Node.js]Restful Api

添加数据

读取users.json并添加user3

var user={
    "user3":{
        "name":"wolfy3",
         "age":3
         }};
//添加数据
app.get("/adduser",function(req,res){
    //读取已经存在的数据
    fs.readFile(__dirname+"/"+"users.json","utf8",function(err,data){
        if(err){
            console.log(err);
        }else{
            data=JSON.parse(data);
            data["user3"]=user["user3"];
            
            res.end(JSON.stringify(data) );
        };
    });
});

启动,并浏览

[Node.js]Restful Api

查找用户1详情

app.get("/:name",function(req,res){
    //读取已经存在的数据
    fs.readFile(__dirname+"/"+"users.json","utf8",function(err,data){
        if(err){
            console.log(err);
        }else{
            data=JSON.parse(data);
           
            var user=data[req.params.name];
            res.end(JSON.stringify(user) );
        };
    });
});

启动,并浏览

[Node.js]Restful Api

删除用户

删除用户,并使用postman发送delete请求,返回删除后的数据。

app.delete("/deleteuser",function(req,res){
    //读取已经存在的数据
    fs.readFile(__dirname+"/"+"users.json","utf8",function(err,data){
        if(err){
            console.log(err);
        }else{
            data=JSON.parse(data);
           delete data["user3"];            
            res.end(JSON.stringify(data) );
        };
    });
});

[Node.js]Restful Api

学习资料

http://www.runoob.com/nodejs/nodejs-restful-api.html


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

C和C++代码精粹

C和C++代码精粹

阿林森 / 董慧颖 / 人民邮电出版社 / 2003-4-1 / 59.00

《C和C++代码精粹》基于作者备受好评的C/C++ User Journal杂志上的每月专栏,通过大量完全符合ISO标准C++的程序集合,说明了C++真正强大的威力,是C和C++职业程序员的实践指南。可以帮助有一定经验的C和C++程序员深入学习这两种密切相关的语言,对书中代码的参悟和应用,可以帮助他们从根本上提高使用程序的效率。一起来看看 《C和C++代码精粹》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

XML 在线格式化
XML 在线格式化

在线 XML 格式化压缩工具

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换