一旦您知道协议的工作原理,设置OAuth2提供程序就变得非常简单。这是一个2或3步的过程(取决于您的设置,以及是否代表用户或仅从服务器获取令牌)。

你需要什么

> OAuth2提供程序的工作代码

>耐心

你需要知道如何处理你的代码:

>创建客户端(公共和私有访问令牌)

找出授权和令牌端点的命名方式(通常是/授权和/令牌)

找出范围如何处理

获取令牌的第一步是调用/授权?response_type = code& client_id = [您的ID]& redirect_uri = [您的重定向URI]& scope = [您的范围],其中:

> clientid([您的ID])是您的公开访问令牌

redirect_uri([您的REDIRECT URI])是您的重定向URI。完成自动化步骤后,您将被重定向至此

范围是您未来令牌的范围

完成后(通常有一个提交按钮),您的浏览器将被重定向到URL中指定的URI(code = blah)。保存此值。

当你有这个代码时,调用另一端点:/ token?client_id = [你的ID]& client_secret = [你的秘密]& grant_type = authorization_code& scope = [你的范围]& code = [你的代码] & redirect_uri = [您的REDIRECT URI]

参数:

– client_id – 再次,您的客户端公钥

– client_secret – 你的私钥(这应该是一个服务器端的调用)

– 范围 – 令牌的范围 – 必须匹配第一个呼叫

– redirect_uri – 重定向URI – 必须匹配第一个呼叫

– 代码 – 你收到的代码

如果一切顺利,您将在屏幕上看到包含令牌信息的JSON对象。

后台会发生什么

步骤1(授权)

当您确认表单时,服务器将创建一个临时令牌(称为身份验证令牌),通常其使用寿命非常短(我的oauth2 sp代码通常将其设置为60秒)。这是您的服务器从接收代码到触发步骤2的时间。它只是一个确认系统,其目的是还存储步骤1中提供的信息以防止劫持。

步骤2(令牌)

这是您的访问令牌实际创建的位置。许多验证,很多东西,但最终,令牌只是一个链接您的client_id和您的令牌的值。就是这样。

无耻的插件:如果您使用Laravel框架,我从头开始构建了这个(而不是使用肮脏的,无文档的示例代码):http://bundles.laravel.com/bundle/oauth2-sp

php oauth 服务端,OAuth 2.0 PHP客户端和服务器示例相关推荐

  1. c语言传奇引擎源码,Ei3.0服务端引擎源代码+登陆网关+客户端插件

    Ei3.0服务端引擎源代码+登陆网关+客户端插件 procedure TPANEL.Button3Click(Sender: TObject); var P:integer; mItem:DWORD; ...

  2. nett服务器接收消息的方法,C#(一沙框架) .net core3.1 SignalR 服务端推送消息至客户端的实现方法,用弹窗插件进行显示,非常美观实用...

    C#(一沙框架) .net core3.1 SignalR 服务端推送消息至客户端的实现方法,用弹窗插件进行显示,非常美观实用 运行效果: 1.安装Microsoft.AspNetCore.Signa ...

  3. JavaSocket服务端处理多个硬件客户端并监测硬件客户端是否在线

    服务端对接的是硬件客户端,客户端反馈的结果是byte[],需要先解析出来硬件的编号,然后存储到map集合中,方便服务端接收到用户指令给另外一个硬件客户端发送指令. 服务端: public class ...

  4. SSR 学习 - 传统服务端渲染 Web 应用、客户端渲染、同构渲染、优缺点和案例演示

    概述 随着前端技术栈和工具链的迭代成熟,前端工程化.模块化也已成为了当下的主流技术方案. 在这波前端技术浪潮中,涌现了诸如 React.Vue.Angular 等基于客户端渲染的前端框架. 这类框架所 ...

  5. java comet_用java实现comet,基于 HTTP长连接的实现,用于从服务端实时发送信息到客户端...

    http://homelink.javaeye.com/blog/293328#comments 参考文档 http://www.ibm.com/developerworks/cn/web/wa-lo ...

  6. 如何用php向wsdl服务器发请求,知道服务器端Wsdl,不写服务端代码,仅写客户端代码能调用服务端的方法吗?...

    新手请教,望高手朋友不吝赐教,无比感谢中. 今天一大早开始研究Webservice,有一本不太专业的参考书,随便找了一个服务端的Wsdl,想调用其中的方法,结果搞了一天,无果,老报错,郁闷. 代码如下 ...

  7. ajax向服务端发送请求验证用户名是否可用小示例

    使用ajax向服务器发送请求 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> ...

  8. 阿里云OSS服务端签名前端JS直传(php)示例

    阿里云OSS服务端签名后前端JS直传(php)示例 需求:服务端上传图片太慢,需要使用前端直传的方式.但前端把阿里云的 AccessKey ID 和 AccessKey Secret 放在前端文件中会 ...

  9. mysql服务端放置_放置类游戏后端服务器架构设计与实现

    前言: 停更了一段时间.2020年也接近尾声了,调整了一下人生状态,继续前进. 今年完全参与了一款放置类游戏从0到开发上线再到合服.从目前市场上买量游戏的发展线路来看,合服意味着游戏走向压榨玩家的最后 ...

最新文章

  1. 独家 | NLP详细教程:手把手教你用ELMo模型提取文本特征(附代码论文)
  2. scala java funtion1_当我在ScalaIDE中运行代码时,为什么要获取`java.lang.NoClassDefFoundError:scala / Function1`?...
  3. 数据结构 --静态队列 讲解
  4. 一文带你认识Spring事务
  5. 【HDU - 5744 】Keep On Movin (回文串性质,贪心思维,不是水题)
  6. HTTP协议中request报文请求方法和状态响应码
  7. SQL Server 2005中的分区表(一):什么是分区表?为什么要用分区表?如何创建分区表?...
  8. 在Service中发送广播被kill掉的Activity能不能收到?
  9. java a%2==0_Java 初始化a=2 打印a+++a++为5
  10. 快速校对所有文件的md5值
  11. IIS URLReWrite URL 重写模块 下载地址
  12. 常用的python内置方法
  13. highcharts
  14. IntelliJ IDEA多屏后窗口不显示问题解决(用工具一键解决)
  15. ArrayList学习[常用方法|源码]
  16. 深入剖析ConcurrentHashMap(2)
  17. Optional Interview with Benny the Irish Polyglot abo---coursera课程Learn how to learn
  18. 操作系统---高响应比优先调度算法实例
  19. Linux设备驱动开发入门之——hello驱动
  20. Burp Suite配合xray代理socks流量

热门文章

  1. linux配置环境jdk
  2. 三种css样式表及其优先级
  3. 全选或者单选checkbox的值动态添加到div
  4. PHP基础班初学心得:脑洞实验-JS变量存储函数与return的一些问题
  5. eclipse 高效快捷键大全
  6. 分布式服务框架HSF学习
  7. 开博拉~~~庆祝一下,哈~~~
  8. 线程间通信的三种方法 (转)
  9. UA MATH523A 实分析3 积分理论例题 一个测度与积分的综合计算题
  10. Spring Boot CLI 入门项目