restful

node.js Express 创建RESTful API

匿名 (未验证) 提交于 2019-12-03 00:34:01
0.项目机构 1.package.js 安装mongoose依赖和body-parser依赖 { "name": "test", "version": "0.0.0", "private": true, "scripts": { "start": "node ./bin/www" }, "dependencies": { "body-parser": "^1.18.3", "cookie-parser": "~1.4.3", "debug": "~2.6.9", "express": "~4.16.0", "http-errors": "~1.6.2", "mongoose": "^5.1.6", "morgan": "~1.9.0", "pug": "2.0.0-beta11" } } npm install mongoose --save npm install body-parser --save 2. app.js 加数据库连接,还有router 这边在mongodb中创建了一个xiaohua1的database var mongoose = require('mongoose'); mongoose.connect('mongodb://article:123456@localhost:27017/xiaohua1') var apiRouter = require('.

yii2 event实例(基于restful风格)

匿名 (未验证) 提交于 2019-12-03 00:26:01
http://www.yiichina.com/topic/6690 需求:有这么一个场景: 猫叫了以后老鼠跑了,狗看见了猫,猫也跑了,人看见了把鞋子丢了过去。 这么一个场景如何用restful风格的YII2的事件机制来表示呢? 分析: 猫叫的动作触发了老鼠跑的动作,同时也触发了狗看的动作, 而狗看到了猫以后,触发了猫跑这个动作, 看到发出的动静,人把鞋子扔了出去 猫的叫声触发了一系列动作 现在把这个场景具体化: * 猫叫了(当插入一条数据成功后,说明猫叫成功了), 触发了老鼠跑(插入一条数据),同时触发了狗看(插入一条数据) * 而狗看(插入一条数据成功后,说明狗看猫成功了)到了猫以后,触发了猫跑(再次插入一条数据)这个动作, * 看到发出的动静(老鼠跑:插入一条数据成功后,说明人看到),人把鞋子扔了出去(插入一条数据) 数据表如下: 注意: 该sql适用于mysql数据库 create table test_house_event ( `id` int unsigned not null primary key auto_increment, `type` tinyint unsigned not null comment '类型:1 猫, 2 老鼠, 3 狗, 4 人', `content` varchar (100) not null comment '动作内容',

使用Swagger2构建RESTful API

匿名 (未验证) 提交于 2019-12-03 00:26:01
由于Spring Boot能够快速开发、便捷部署等特性,相信有很大一部分Spring Boot的用户会用来构建RESTful API。而我们构建RESTful API的目的通常都是由于多终端的原因,这些终端会共用很多底层业务逻辑,因此我们会抽象出这样一层来同时服务于多个移动端或者Web前端。 这样一来,我们的RESTful API就有可能要面对多个开发人员或多个开发团队:IOS开发、Android开发或是Web开发等。为了减少与其他团队平时开发期间的频繁沟通成本,传统做法我们会创建一份RESTful API文档来记录所有接口细节,然而这样的做法有以下几个问题: 由于接口众多,并且细节复杂(需要考虑不同的HTTP请求类型、HTTP头部信息、HTTP请求内容等),高质量地创建这份文档本身就是件非常吃力的事,下游的抱怨声不绝于耳。 随着时间推移,不断修改接口实现的时候都必须同步修改接口文档,而文档与代码又处于两个不同的媒介,除非有严格的管理机制,不然很容易导致不一致现象。 为了解决上面这样的问题,本文将介绍RESTful API的重磅好伙伴Swagger2,它可以轻松的整合到Spring Boot中,并与Spring MVC程序配合组织出强大RESTful API文档。它既可以减少我们创建文档的工作量,同时说明内容又整合入实现代码中,让维护文档和修改代码整合为一体

Restful风格的URL请求

匿名 (未验证) 提交于 2019-12-03 00:22:01
第一种方式: .do, .action 类似于 /user/addUser.do /user/addUser.action 第二种配置方式:/* 类似于/user/addUser /user/delUser 注意:第二种方式其实是包含第一种方式,但是当我们的页面包含静态资源文件 .js, .image,*.css 的时候 springMVC 会将他们认为是一个 url 请求去匹配,结果 404。 怎么解决? 三种方式: 一:在springmvc.xml配置文件里面配置: < mvc:resources location = "/jsAndCss/" mapping = "/jsAndCss/**" > </ mvc:resources > 二:在springmvc.xml配置文件里面配置: < mvc:default-servlet-handler /> 三:在web.xml配置: < servlet-mapping > < servlet-name > default </ servlet-name > < url-pattern > *.js </ url-pattern > </ servlet-mapping > ps:实际应用中第一种方式比较常见,因为后两种方式使用的是容器默认的 servlet,不同的容器默认的 servlet 不同,实际项目部署时多用 WebLogic

详解RESTful

匿名 (未验证) 提交于 2019-12-03 00:22:01
Restful风格的API是一种软件架构风格而不是标准,只是提供了一组设计原则和约束条件。他主要用于客户端和服务器交互类的软件。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。 在Restful风格中,用户请求的url使用同一个url,但用请求方式:GET,POST,DELETE,PUT...等方式对请求的处理方法进行区分,这样可以在前后台分离式的开发中使得前端开发人员不会对请求的资源地址产生混淆和检查大量方法名的麻烦,形成一个统一的接口。 在Restful风格中,现有规定如下: GET(SELECT):从服务器查询,可以在服务器通过请求的参数区分查询方式 POST(CREATE):在服务器新建一个资源,调用insert操作 PUT(UPDATE):在服务器更新资源,调用update操作 PATCH(UPDATE):在服务器更新资源(客户端提供改变的属性)。目前jdk7未实现,tomcat7也不行。 DELETE(DELETE):从服务器删除资源,调用delete语句 基本介绍完了,我们来写个例子 基于RESTcontroller,实现REST api GET request to /api/emp/ returns a list of emps GET request to /api/emp/1 returns the emp with ID 1 POST

基于MVC的RESTful风格的实现

匿名 (未验证) 提交于 2019-12-03 00:16:01
基于 MVC 的 RESTful 风格的实现 1. RESTful 风格阐述 REST 服务是一种 ROA (Resource-Oriented Architecture,面向资源的架构)应用。主要特点是方法信息存在于 HTTP 协议的方法中( GET , POST , PUT , DELETE ),作用域存在于 URL 中。例如,在一个获取设备资源列表的 GET 请求中,方法信息是 GET ,作用域信息是URI种包含的对设备资源的过滤、分页和排序等条件 良好的 REST API 不需要任何文档 1.1 REST 风格资源路径 REST 风格的资源路径设计是面向资源的, 资源的名称 应该是准确描述该资源的 名词 。 资源路径概览: sheme://host:port/path?queryString 例: http://localhost:8080/bywlstudio/users/user?username=xiuer 1.2 HTTP 方法 GET 用于 读取 、 检索 、 查询 、 过滤 资源 PSOT 用于 创建 一个资源 PUT 用于 修改 、 更新 资源、 创建客户端维护主键信息的资源 DELETE 用于 删除 资源 资源地址和 HTTP 方法结合在一起就可以实现对资源的完整定位 1.3 RESTful 风格 API 设计

RESTful规范

匿名 (未验证) 提交于 2019-12-03 00:04:02
 我们在浏览器中能看到的每个网站,都是一个web服务。那么我们在提供每个web服务的时候,   都需要前后端交互,前后端交互就一定有一些实现方案,我们通常叫web服务交互方案。   目前主流的三种web服务交互方案:     -- REST ( Representational State Transfer)表述性状态转移     -- SOAP (Simple Object Access Protocol) 简单的对象访问协议     -- XML-RPC (XML Remote Procedure Call)基于XML的远程过程调用   XML-RPC是通过XML将调用函数封装,并使用HTTP协议作为传送机制。   后来在新的功能不断被引入下,这个标准慢慢演变成为今日的SOAP协定。   SOAP服务则是以本身所定义的操作集,来访问网络上的资源。   SOAP也是基于XML的,但是它不只限于HTTP协议的传输,包括TCP协议,UDP协议都可以传输。   REST是Roy Thomas Fielding博士于2000年在他的博士论文里提出来的。   REST相比SOAP更加简洁,性能和开发效率也有突出的优势。   我们今天主要说一下这个REST,现在越来越多的web服务开始采用REST风格设计和实现。   例如,amazon.com提供接近REST风格的Web服务进行图书查找

使用经过oauth验证后的github API,避免调用频次超标的问题

匿名 (未验证) 提交于 2019-12-03 00:03:02
今天我打算开发一个小工具,使用github Restful API获取我一个仓库里的所有issues: https://api.github.com/repos/i042416/KnowlegeRepository/issues 执行完毕后,从响应头部X-RateLimit-Limit得知,这个Restful API每小时只能调用60次,我已经调用了2次,剩余58次。 从头部字段X-RateLimit-Reset得知,如果这60次全部用完,要1小时后才能恢复。 幸运的是,Github还支持通过oauth认证的方式去调用这些API: 通过这种认证方式调用的API,每小时可以调用的次数暴涨到5000次,这下美滋滋了。 要获取更多Jerry的原创文章,请关注公众号"汪子熙": 来源:51CTO 作者: JerryWangSAP 链接:https://blog.csdn.net/i042416/article/details/100767658

curl 模拟restful 请求的用法

匿名 (未验证) 提交于 2019-12-03 00:02:01
1. curl -XGET http://localhost/ 2. curl -XPOST -H “Content-Type:application/json” -d ‘{“action”:“create”, “size”:1024}’ http://localhost:4806/v1.0/sqh001/disks/rbd1 3. curl -XDELETE http://localhost 4. 来源:博客园 作者: bob_coder 链接:https://www.cnblogs.com/bob-coder/p/11502337.html