Java学习者论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

恭喜Java学习者论坛(https://www.javaxxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,购买链接:点击进入购买VIP会员
JAVA高级面试进阶视频教程Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程

Go语言视频零基础入门到精通

Java架构师3期(课件+源码)

Java开发全终端实战租房项目视频教程

SpringBoot2.X入门到高级使用教程

大数据培训第六期全套视频教程

深度学习(CNN RNN GAN)算法原理

Java亿级流量电商系统视频教程

互联网架构师视频教程

年薪50万Spark2.0从入门到精通

年薪50万!人工智能学习路线教程

年薪50万!大数据从入门到精通学习路线年薪50万!机器学习入门到精通视频教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程 MySQL入门到精通教程
查看: 828|回复: 0

开发交流:基于Android平台的人人网开发流程之OAuth 2.0在移动

[复制链接]

该用户从未签到

发表于 2011-10-24 10:45:34 | 显示全部楼层 |阅读模式
备注:此篇文档摘自人人网开放平台官方文档



OAuth 2.0在移动领域的应用 :这部分很重要,说明了移动领域的应用。   
    随着移动平台的普及,越来越多的人人用户选择使用移动平台来使用人人网的各项服务。开发者同样可以在移动平台上开发自己的应用。

    与Web应用和桌面应用类似,手机平台上的应用使用OAuth2.0的Web Server Flow 和 User-Agent Flow。在使用人人网OAuth和人人网开放平台其他服务前,需要 注册一个应用。

    注册应用后,获得“client_id”和“client_secret”,便可以使用OAuth2.0进行验证授权。开发者中心页面中API Key就是人人OAuth2.0中的“client_id”,Secret Key就是“client_secret”。

Mobile Web应用
       有自己Web Server的Mobile应用可以使用OAuth2.0的Web Server Flow,流程与普通Web应用基本一样,请参考普通Web应用的验证授权。

基本流程:
? 引导用户授权,获取Authorization Code;
? 使用Authorization Code换取Access Token;
?  出示Access Token,访问人人网资源。

    唯一与普通Web应用的验证授权不同的是,需要传递特定的“display”参数以便为用户展示适用于在移动平台上显示的授权页面。

    在Mobile应用里可以使用一下两个“display”参数:
       mobile 适用于型号较老,没有全功能浏览器的手机使用。
    touch 适用于智能手机,拥有全功能的浏览器的手机使用。

  例如在WAP站点中,可以将用户的浏览器重定向到如下URL来展示授权页面:  
  https://graph.renren.com/oauth/authorize?
    response_type=code&
    client_id=...&
    redirect_uri=http://www.example.com/callback&
    display=mobile

“display”为“mobile”的授权页面:



“display”为“touch”的授权界面:



Mobile 客户端应用

       大部分Mobile 客户端应用,没有Server,这与桌面应用程序的验证授权流程类似,Mobile客户端应用使用OAuth2.0的User-Agent Flow。

    基本流程:
    引导用户授权,获取“access_token”;
    出示“access_token”,访问人人网资源。

    详细流程如下所示:
    在应用中嵌入一个web浏览器控件,显示人人网OAuth2.0授权页面“https://graph.renren.com/oauth/authorize”,并带上参数“client_id”、“redirect_uri”、“response_type”。 使用User-Agent Flow,response_type的值需要设置成token。
如果您的应用需要嵌在一个小的窗口中,您可以再带上一个参数display,并且其值设置为popup。
例如:
https://graph.renren.com/oauth/authorize?
    client_id=...&
    redirect_uri=http://graph.renren.com/oauth/login_success.HTML&
    response_type=token&
    display=popup

注意:由于客户端类应用,没有自己的Web Server,在使用OAuth2.0 User-Agent Flow进行授权时,可以将redirect_uri指定为人人网提供的授权成功页面“http://graph.renren.com/oauth/login_success.html”。
用户授权之后,浏览器控件将被重定向到“http://graph.renren.com/oauth/login_success.html”,并且在URI Fragment 中带上access token,例如:http://graph.renren.com/oauth/lo ... &expires_in=...
应用可以截获浏览器控件跳转事件,并在redirect_uri中的Fragment获取返回的access_token。

注意:如果用户拒绝授权,人人网将引导用户到您之前传的redirect_uri地址,并且缀上错误信息。
回复

使用道具 举报

该用户从未签到

发表于 2011-10-24 10:45:37 | 显示全部楼层

Re:开发交

还在学习过程中,不过上次说过了人人网用的 oauth,能列举一下和他同类的东西之间的相同点与不同点么?
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2011-10-24 10:45:43 | 显示全部楼层

Re:开发交

个人建议,如果是学习经验方面的东西,先写在本地文档,然后复制过来,
当然,有时候为了排版方便,先写在论坛,然后复制到本地也是可以的,
方便整理也方便自省,然后对于保存也很有帮助
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2011-10-24 10:45:45 | 显示全部楼层

Re:开发交

不错,不错
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2011-10-24 10:45:48 | 显示全部楼层

Re:开发交

顶下楼主,看看
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2011-10-24 10:45:51 | 显示全部楼层

Re:开发交

顶了 学习学习
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2011-10-24 10:45:54 | 显示全部楼层

Re:开发交

我什么都不知道了  我是新手        装不了   android开发环境
回复 支持 反对

使用道具 举报

该用户从未签到

发表于 2011-10-24 10:45:57 | 显示全部楼层

Re:开发交\0

要耐心,慢慢来,我也遇到很多问题呢
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|Java学习者论坛 ( 声明:本站资料整理自互联网,用于Java学习者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

GMT+8, 2025-1-11 08:02 , Processed in 0.364598 second(s), 33 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表