c#实现Google账号登入授权(OAuth 2.0)并获取个人信息
c#实现Google账号登入授权(OAuth 2.0)并获取个人信息
此博主要介绍通过google 账号(gmail)实现登入,授权方式OAuth2.0,下面我们开始介绍。
1.去google官网注册一个gmail账号:https://accounts.google.com/SignUp?service=devconsole&continue=https%3A%2F%2Fcode.google.com%2Fapis%2Fconsole%2F,
然后去https://cloud.google.com/console?redirected=true#/project新建一个project(如果有可以不用新建),然后https://cloud.google.com/console?redirected=true#/project/apps~steady-observer-413/apiui/app?show=allapp注册一个APP,如果是注册web app,设置好回调地址,详细如下图




2.注册好了APP,接下来新建一个解决方案,本例用的是asp.net mvc4 web应用。

3.对web.config做点设置,把注册APP时得到的Client ID 和 Client Secret,Redirect Uri添加到config文件中,如下:

4.一切准备就绪,开始coding了,不过在coding之前,有必要找出google oauth2.0的api,参考地址:https://developers.google.com/accounts/docs/OAuth2Login#libraries
其他更多信息参考地址:https://developers.google.com/google-apps/



以上就是google oauth2.0 授权登入的全部过程,拿到access token之后可以call google相关api,更多api请参考:https://developers.google.com/google-apps/
c#实现Google账号登入授权(OAuth 2.0)并获取个人信息的更多相关文章
- c#实现microsoft账号登入授权(OAuth 2.0)并获取个人信息
本博主要介绍microsoft 账号授权(OAuth 2.0)登入并获取用户信息的过程,因为写过google账号授权登入的过程,所以这里就简单介绍一下,google授权登入参考地址:http://ww ...
- 用户授权 OAuth 2.0
什么是OAuth OAuth是一个关于授权(Authorization)的开放网络标准,目前的版本是2.0版.OAuth适用于各种各样的包括提供用户身份验证机制的应用程序,注意是Authorizati ...
- 夺命雷公狗---微信开发51----网页授权(oauth2.0)获取用户基本信息接口(1)
如果用户在微信客户端访问第三方网页,公众号可以通过微信网页授权机制,来获取用户基本信息,从而实现业务逻辑. 一般我们用来“数据采集”,“市场调查”,“投票”,只要授权了第三方网页,微信用户无需注册就可 ...
- 夺命雷公狗---微信开发53----网页授权(oauth2.0)获取用户基本信息接口(3)实现世界留言版
前面两节课我们讲的是base型的授权了,那么现在我们开始Userinfo型授权, 先来看下我们的原理图 我们这节课来做一个 世界留言版 系统 1..首先我还是在微信测试平台那里设置好回调页面的域名 2 ...
- [微信开发] - weixin4j获取网页授权后的code进而获取用户信息
weixin4j封装好的SnsComponent组件中的方法可以执行该步骤 WeixinUserInfoController : package com.baigehuidi.demo.control ...
- 夺命雷公狗---微信开发52----网页授权(oauth2.0)获取用户基本信息接口(2)
我们在上一节课已经发送code给第三方了,那么这就要获取code去换取到用户的openid. 第一步:编写create_baseurl.php(上一节课程已经写完了) 第二步:编写vote1.php( ...
- QQ登入(6)腾讯微博-获取微博用户信息,发送微博
1.1获取weibo用户信息 //先登入授权,可以参考QQ登入(1) Weibo mWeibo = new Weibo(this, mQQAuth.getQQToken()); mWeibo.getW ...
- QQ登入(5)获取空间相册,新建相册,上传图片到空间相册
///////////////////////////////////////////////////////////////////// 获取相册列表:必须先授权登入 1.1. String mA ...
- discuz之同步登入
前言 首先感谢dozer学长吧UCenter翻译成C# 博客地址----------->http://www.dozer.cc/ 其次感谢群友快乐々止境同学的热心指导,虽然萍水相逢但让我 ...
随机推荐
- MySQL当您插入列无效的数据插入
1.错误叙述性说明 com.mysql.jdbc.exception:jdbc4.MySQLSyntaxErrorException:Unknown column 'man' in 'field li ...
- Android相框 与 源代码结构
一. Android 相框 Android框架层级 : Android 自下 而 上 分为 4层; -- Linux内核层; -- 各种库 和 Android执行环境层; -- 应用框架层; -- 应 ...
- hdu 2066 一个人的旅行 最短路径
一个人的旅行 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Sub ...
- ThinkPHP 3.2 开放 cache注缓存,过滤非法字符
打开缓存配置文件 /Application/Common/conf/cache.php源代码如下面: <?php return array( //'配置项'=>'配置值' 'LAYOUT_ ...
- ASP.NET MVC 文件上传和路径处理
ASP.NET MVC 文件上传和路径处理总结 目录 文件的上传和路径处理必须解决下面列出的实际问题: 1.重复文件处理 2.单独文件上传 3.编辑器中文件上传 4.处理文章中的图片路径 5.处理上传 ...
- 多线程——@synchronized(object)
@synchronized 的作用是创建一个相互排斥锁,保证此时没有其他线程对self对象进行改动.这个是objective-c的一个锁定令牌,防止self对象在同一时间内被其他线程訪问,起到线程的保 ...
- Oracle 免费的数据库
Oracle 免费的数据库--Database 快捷版 11g 安装使用与"SOD框架"对Oracle的CodeFirst支持 一.Oracle XE 数据库与连接工具安装使用 O ...
- sqlserver备份的几种方式
1.用sqlserver的维护计划 在这里我就不给截图演示了,这个比较简单,无非就是通过sqlserver自己的维护计划拖拽出2个一个‘备份数据库’任务和一个‘清除维护’任务. 需要注意的点: 1)有 ...
- 客户端javascript
<script> function moveon(){ var answer=confirm("hello,good morning!");//通过弹出对话框询问用户 ...
- Monkey源码分析之事件源
上一篇文章<Monkey源码分析之运行流程>给出了monkey运行的整个流程,让我们有一个概貌,那么往后的文章我们会尝试进一步的阐述相关的一些知识点. 这里先把整个monkey类的结构图给 ...