---------------------------------目录-------------------------------------

QQ登录整合/oauth2.0认证-03-对第二节的代码改进 (2015-07-07 16:10)

QQ登录整合/oauth2.0认证-02-跳转到QQ互联页 (2015-07-06 20:25)

QQ登录整合/oauth2.0认证-01-申请appkey和appid (2015-07-06 20:05)

---------------------------------目录-------------------------------------

为了方便我们测试,我们随便找一个域名 比如:http://www.xxxxxx.com

登录QQ互联修改回掉地址为:http://www.xxxxxx.com/AuthLogin/QQCallBack.aspx

当我们点击按钮后,页面会跳转到QQ互联的地址,在这个地址上面,使用QQ进行登录

如果你的网站还没有审核通过,这个时候,你只能使用测试账号进行登录

登录后,会跳转到你填写的回调地址,并且地址后面会带上一个code参数和state参数 这个state参数就是外面上两节课定义的那个随机数了

回调的地址如下

http://www.xxxxxx.com/AuthLogin/QQCallBack.aspx?code=

为了方便我们本地调试,我们修改host 让vs能够调试我们的代码

1 打开C:\Windows\System32\drivers\etc

修改hosts文件

将下面

# 127.0.0.1       localhost
# ::1             localhost

改为

# 127.0.0.1       www.xxxxxx.com
# ::1             www.xxxxxx.com

然后再vs主项目中,也就是启动项目

修改属性,将IIS服务器的URL改为www.xxxxxx.com

你还需要在本地的iis上面部署一个网站,网站的根目录就是你的web项目的目录

打开IIS--添加网站

物理路径选择web项目的路径

主机头写www.xxxxxx.com 端口写80 这样通过hosts 我们可以在本地访问www.xxxxxx.com 就是打开我们的web测试网站了

然后我们就可以调试了

现在当我们访问使用vs来调试打开网站

http://www.xxxxxx.com/authlogin/qq.aspx 这个页面的时候,点击按钮

然后登陆互联使用协助账号登陆

之后跳转到http://www.xxxxxx.com/AuthLogin/QQCallBack.aspx?code=A0D7F28BFD69436B127D00933AFA9CF1&state=25839这个地址

这里的state我们可以和我们之前请求的随机数进行比较,这样可以防止被拦截了

我们可以将随机数写入session中

从上面的地址我们可以知道,腾讯会通过get方式,返回两个参数给我们,一个是code 一个是state

state就是我们之前生成的随机数,而code的作用很重要,我们以后的操作,很多就靠这个code了

这一节就先讲到这里 ,,我们下节课再见....

QQ登录整合/oauth2.0认证-04-调整到QQ互联进行QQ登录的更多相关文章

  1. QQ登录整合/oauth2.0认证-03-对第二节的代码改进

    ---------------------------目录---------------------------------- QQ登录整合/oauth2.0认证-01-申请appkey和appid ...

  2. QQ登录整合/oauth2.0认证-02-跳转到QQ互联页

    ---------------------------目录---------------------------------- QQ登录整合/oauth2.0认证-01-申请appkey和appid ...

  3. QQ登录整合/oauth2.0认证-01-申请appkey和appid

    本节需要你申请appkey和appid还有绑定域名的空间 首先 再讲课之前 你需要准备以下东西 到腾讯开发平台中申请 开发者 获得appid 和appkey 这两个东东 这两个东东 就算没审核 也可以 ...

  4. Spring Cloud Zuul 网关使用与 OAuth2.0 认证授权服务

    API 网关的出现的原因是微服务架构的出现,不同的微服务一般会有不同的服务地址,而外部客户端可能需要调用多个服务的接口才能完成一个业务需求,如果让客户端直接与各个微服务通信,会有以下的问题: 客户端会 ...

  5. 那些年,我们开发的接口之:QQ登录(OAuth2.0)

    那些年,我们开发的接口之:QQ登录(OAuth2.0) 吴剑 2013-06-14 原创文章,转载必须注明出处:http://www.cnblogs.com/wu-jian 前言 开发这些年,做过很多 ...

  6. QQ登录(OAuth2.0)

    QQ登录(OAuth2.0) 那些年,我们开发的接口之:QQ登录(OAuth2.0) 吴剑 2013-06-14 原创文章,转载必须注明出处:http://www.cnblogs.com/wujian ...

  7. OAuth2.0认证和授权以及单点登录

    https://www.cnblogs.com/shizhiyi/p/7754721.html OAuth2.0认证和授权机制讲解 2017-10-30 15:33 by shizhiyi, 2273 ...

  8. DRF接入Oauth2.0认证[微博登录]报错21322重定向地址不匹配

    DRF接入Oauth2.0认证[微博登录]报错21322重定向地址不匹配 主题自带了微博登陆接口,很简单的去新浪微博开放平台创建了网页应用,然后把APP ID和 AppSecret填好后,以为大功告成 ...

  9. Spring Security OAuth2.0认证授权六:前后端分离下的登录授权

    历史文章 Spring Security OAuth2.0认证授权一:框架搭建和认证测试 Spring Security OAuth2.0认证授权二:搭建资源服务 Spring Security OA ...

随机推荐

  1. 基于ZigBee和STM32的智能家居控制系统的设计与实现(三)

    基于ZigBee和STM32的智能家居控制系统的设计与实现(三) 自从前两篇博客介绍了智能家居系统的基本实现机理后,收到了好多朋友的来信,和我讨论了好多的这方面的知识,在此很高兴,虽然自己做的这个所谓 ...

  2. [leetcode]Validate Binary Search Tree @ Python

    原题地址:https://oj.leetcode.com/problems/validate-binary-search-tree/ 题意:检测一颗二叉树是否是二叉查找树. 解题思路:看到二叉树我们首 ...

  3. jquery ajax 的 $.get()用法详解

    js文件 $(document).ready(function(){ $("form").submit(function(event) {event.preventDefault( ...

  4. POJ 3525 Most Distant Point from the Sea 二分+半平面交

    题目就是求多变形内部一点. 使得到任意边距离中的最小值最大. 那么我们想一下,可以发现其实求是看一个圆是否能放进这个多边形中. 那么我们就二分这个半径r,然后将多边形的每条边都往内退r距离. 求半平面 ...

  5. hdu Boring count(BestCode round #11)

    Boring count Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Tot ...

  6. 复习C语言:第一章

    复习C语言中的5中基本类型,以及各个类型占用了多少个字节: #include <stdio.h> int main(void) { printf("int=%d\n", ...

  7. Ubuntu IntelliJ IDEA 注冊碼與Gradle相關

    一.Ubuntu IntelliJ IDEA 注冊碼 在线免费生成IntelliJ IDEA 15.0(16.+)注册码 注冊參考:https://www.iteblog.com/idea/ 依次选择 ...

  8. 搭建持续集成单元测试平台(Jenkins+Ant+Java+Junit+SVN)

    一.环境准备 Jenkins: 到官网下载jenkins.war包:http://jenkins-ci.org/ 安装方法有两种: 把下载下来的jenkins.war包放到文件夹下,如C:\jenki ...

  9. spring boot 运行提示:Process finished with exit code 1

    spring boot 运行提示:Process finished with exit code 1 经检查发现是由于在application.properties配置文件中将某些自定义配置项移除了, ...

  10. 方法(method)和函数(function)有什么区别?

    方法(method)和函数(function)有什么区别? 定义和参数区别 函数是独立的功能,与对象无关,需要显示的传递数据 方法与对象和类相关,依赖对象而调用,可以直接处理对象上的数据,也就是隐式传 ...