美文网首页
Restfull API 示例

Restfull API 示例

作者: youpd | 来源:发表于2018-11-08 10:37 被阅读0次

什么是Restfull API

Restfull API 从字面就可以知道,他是rest式的接口,所以就要先了解什么是rest

rest 不是一个技术,也不是一个协议

rest 指的是一组架构约束条件和原则,提供了一个新的架构设计思路,满足这些约束条件和原则的应用程序或设计就是 RESTful

在REST规则中,有两个基础概念:对象、行为

对象就是我们要操作的对象,例如添加用户的操作,那么对象就是user

行为有4种常用的:查看、创建、编辑、删除

rest的提出者很巧妙的利用http现有方法来对应这4种行为:

GET - 查看

POST - 创建

PUT - 编辑

DELETE - 删除

为什么用Restfull API

例如常用的MVC结构中,前后端的融合还是比较紧密的,用户访问一个网址,例如 http://test.com/a.php,请求先发送到动态php处理,php中处理逻辑,然后使用页面模板来输出显示给用户

以前用户主要就是用浏览器访问,这样的结构没什么问题,但现在移动客户端越来越重要,显然不能使用这个结构,需要为移动客户端开发接口

RESTful API 就可以通过一套统一的接口为所有客户端提供web服务,实现前后端分离

再比如在一个大型系统中,可能是多种开发语言一起工作,使用 RESTful API 就可以完全不关心开发语言,以标准的接口来协同工作

Restfull API是怎么定义的

下面通过几个示例了解下Restfull API的定义方式

(1)查看所有任务

GET http://test.com/tasks

(2)新建一个任务

POST http://test.com/tasks

Data: title = Foobar

(3)根据ID查看一个任务

GET http://test.com/tasks/123

(4)更新任务

PUT http://test.com/tasks/123

Data: title = New 

(5)删除任务

DELETE http://test.com/tasks/123

可以看到Restfull API的风格非常简洁、统一、明确

例如查看操作,用普通方式的话,定义方式是任意的,如:

http://test.com/listall_tasks

'listall_tasks' 就是随意定义的,通过这个名字才可以看出是查看全部的意思,如果开发人员用了一个没有明确意义的名字,那就需要看文档或者代码才能知道含义了

而Restfull API 通过 GET 方法就知道是查看操作,通过tasks就知道查看的对象是什么

@Controller

@RequestMapping("/rest")publicclass RestController {

    @RequestMapping(value="/user/{id}",method=RequestMethod.GET)

    publicString get(@PathVariable("id") Integer id){

        System.out.println("get"+id);

        return"/hello";

    }

    @RequestMapping(value="/user/{id}",method=RequestMethod.POST)

    publicString post(@PathVariable("id") Integer id){

        System.out.println("post"+id);

        return"/hello";

    }

    @RequestMapping(value="/user/{id}",method=RequestMethod.PUT)

    publicString put(@PathVariable("id") Integer id){

        System.out.println("put"+id);

        return"/hello";

    }

    @RequestMapping(value="/user/{id}",method=RequestMethod.DELETE)

    publicString delete(@PathVariable("id") Integer id){

        System.out.println("delete"+id);

        return"/hello";

    }

}

相关文章

  • Restfull API 示例

    什么是Restfull API Restfull API 从字面就可以知道,他是rest式的接口,所以就要先了解什...

  • 环信Restfull API dotnetSDK

    Easemob.Restfull4Net 环信Restfull API dotnet的封装 支持的.Net Fra...

  • RESTfull API

    介绍 现在的网络应用程序,分为前端和后端两个部分, 采用客户端/服务器 模式。 后端建立在分布式体系上,通过互联网...

  • RESTfull API

    API 基本格式 在命令行访问 集群的 API 的格式如下: 简单解释一下命令的各个部分: VERB : 请求的方...

  • docker、gateway、nginx网络性能损耗对比测试

    一、测试准备 1.程序准备 1、java api程序,springboot restfull api; 2、ope...

  • 小程序笔记篇

    小程序当中的api使用 服务器api调用的类型: RESTFull API 返回的是 json SOAP XML ...

  • Elasticsearch Restfull API

    本文发布链接地址: https://www.jianshu.com/p/0ccadf8eb3c5 Elastics...

  • Elasticsearch Restfull API

    API 基本格式 在命令行访问 集群的 API 的格式如下: 简单解释一下命令的各个部分: VERB : 请求的方...

  • 50. RESTful API的简单实现

    RESTfull API是现在很流行的 API 设计风格。众所周知的 HTTP 1.1规范正是基于 REST 架构...

  • RESTfull api 状态码

    200 OK - [GET]:服务器成功返回用户请求的数据,该操作是幂等的(Idempotent)。201 CRE...

网友评论

      本文标题:Restfull API 示例

      本文链接:https://www.haomeiwen.com/subject/sjiixqtx.html