深入理解restfulAPI和 Oauth2.0(精简版)
一、restfulAPI
1、解释:
restfulAPI协议,我们也可以说是一套API接口编写风格。
它被现在很多企业所认可和默认,是一套成俗的API接口编写方案。
2、restfulAPI之资源
例一:
https://www.xifl.com/users/1
在PHP中,我们对数据表操作,我们会在我们的项目中构建一个model,通过控制器对model来实现基本的增删改查,并且通过视图来渲染我们获取的数据。
那么,在restfulAPI中,我们通常用全球资源定位符(URL)来表示模型数据。
简单说:资源表示模型数据。
在restfulAPI风格中,URI我们一般用复数形式,来表示模型数据的集合,例如/users , 而后面的/1 来表示数据的条数。
那么问题来了,为了统一让不同的客户端或服务商用我的接口。接口格式是统一了,怎么才能实现对资源的增删该查呢?
在http1.0或http1.1中,访问资源我们可以有不同的访问的动作。
如:
GET
POST
PUT / PATCH
DELETE
HEAD
OPTIONS
GET 我们一般用来获取资源数据。
POST 我们用来向服务器提交处理数据。
PUT / PATCH 我们用来修改资源数据。
DELETE 我们用来删除资源数据
HEAD 我们用来获取method头部信息。
OPTIONS 我们用来获取当前服务商都允许那些访问动作。
例二:
获取id为1的数据:
$http({
url: 'https://www.xifl.com/users/1',
method: 'GET',
}).success(function (result) {
//console.log()
}).error(function (errors) {
//console.log()
});
};
例三:
删除id为1的数据
$http({
url: 'https://www.xifl.com/users/1',
method: 'DELETE',
}).success(function (result) {
//console.log()
}).error(function (errors) {
//console.log()
});
};
那么来总结一下:
1、在restfulAPI中,我们通过统一的URL(全球资源定位符)来表示模型数据。
2、在restfulAPI中,我们通过http下不同的访问动作来实现对资源的常规操作。(增、删、改、查)
二、Oauth2.0
时间关系,待续。。。。。。0.0
深入理解restfulAPI和 Oauth2.0(精简版)的更多相关文章
- 心愿:做一个精简版MFC
我觉得自己有能力看懂MFC的C++代码和总体流程,但是由于MFC混杂了太多的东西,比如OLE等等不必要的东西,又做了无数的ASSERT判断,影响整体流程的理解.因此我要做一个精简版的MFC,而且能用它 ...
- OAuth2.0的理解&基础
此文章是复制黏贴网上文章的,主要做自己备用着看(也加了自己的一点见解),喜欢的读者也可以看. OAuth是一个关于授权(authorization)的开放网络标准,在全世界得到广泛应用,目前的版本是2 ...
- 深入理解OAuth2.0协议
1. 引言 如果你开车去酒店赴宴,你经常会苦于找不到停车位而耽误很多时间.是否有好办法可以避免这个问题呢?有的,听说有一些豪车的车主就不担心这个问题.豪车一般配备两种钥匙:主钥匙和泊车钥匙.当你到酒店 ...
- TeamViewer12.0.71503(远程控制软件)精简版 单文件企业版介绍
TeamViewer 是一款能在任何防火墙和 NAT 代理的后台用于远程控制,桌面共享和文件传输的简单且快速的解决方案.为了连接到另一台计算机,只需要在两台计算机上同时运行 TeamViewer 即可 ...
- 通用PE工具箱 4.0精简优化版
通用PE工具箱 4.0精简优化版 经用过不少 WinPE 系统,都不是很满意,普遍存在篡改主页.添加广告链接至收藏夹.未经允许安装推广软件等流氓行为,还集成了诸多不常用的工具,令人头疼不已.那么今天给 ...
- TeamViewer12.0.71503(远程控制软件)精简版单文件企业版介绍
TeamViewer 是一款能在任何防火墙和 NAT 代理的后台用于远程控制,桌面共享和文件传输的简单且快速的解决方案.为了连接到另一台计算机,只需要在两台计算机上同时运行 TeamViewer 即可 ...
- 帮你深入理解OAuth2.0协议
1. 引言 如果你开车去酒店赴宴,你经常会苦于找不到停车位而耽误很多时间.是否有好办法可以避免这个问题呢?有的,听说有一些豪车的车主就不担心这个问题.豪车一般配备两种钥匙:主钥匙和泊车钥匙.当你到酒店 ...
- 夺命雷公狗---微信开发53----网页授权(oauth2.0)获取用户基本信息接口(3)实现世界留言版
前面两节课我们讲的是base型的授权了,那么现在我们开始Userinfo型授权, 先来看下我们的原理图 我们这节课来做一个 世界留言版 系统 1..首先我还是在微信测试平台那里设置好回调页面的域名 2 ...
- VS合集/6.0/2005/2008/2010/2012/2013 绿色版精简版
VS合集/6.0/2005/2008/2010/2012/2013 绿色版精简版 找到这里的都是老司机,别的不多说了 链接: http://pan.baidu.com/s/1i5IyYZb ...
随机推荐
- PS基础,数学,语文
PS基础(修图) 污点修复画笔工具---设置画笔大小---设置类型(内容识别)---修改图片---完成. 修复画笔工具---设置画笔大小---设置源(取样)---修改图片---完成. 修补工具---设 ...
- C#之Clone
因为类的实例是引用类型,要想用原有的类中的实例的数据的话,既要想创建原对象的一个副本的话,只能用clone方法. Clone方法分为深clone和浅clone 在C#中提供了浅clone的方法,即为M ...
- [LeetCode]19. Remove Nth Node From End of List删除链表的倒数第N个节点
Given a linked list, remove the n-th node from the end of list and return its head. Example: Given l ...
- The fourteenth day
A man is not old as long as he is seeking something. A man is not old until regrets take the place o ...
- 云集微助手安装教程和授权说明old
安装教程 一 .手机越狱(如果已经越狱请跳过此步,直接进行第二步) 越狱教程:http://jailbreak.25pp.com/yueyu/ 二 .安装触动精灵(如果你已安装触动精灵最新版请跳过此步 ...
- 回归JDK源代码(2)Enumeration<E>接口
现在的Java程序员习惯使用Iterator<E>接口或者增强for循环来遍历集合.如果回到JDK 1.0,Enumeration接口则是遍历向量.哈希表的不二之选.本节就解读和翻译一下E ...
- 监控系统-mod-gearman
doc http://labs.consol.de/nagios/mod-gearman/ 安装 yum -y install gearmand-server-0.33-2.rhel6.x86_64. ...
- git github添加远程仓库出错 remote origin already exists
在github上建立了仓库后,执行 git remote add origin https://github.com/zhangsan/sample.git时,提示 remote origin alr ...
- 如何处理Eclipse错误消息 The declared package does not match the expected package
我从github下载了一个开源项目后,导入到自己Eclipse之后,遇到了这个烦人的错误消息: The declared package "com.sap.smartService" ...
- 运行npm update等命令出错后如何分析问题根源
我今天工作时,在当前前端项目工作目录下执行命令npm update 结果遇到如下错误:registry error parsing json npm ERR! Unexpected token < ...