TesterHome android app 编写历程(四)
2015-10-11 16:47
316 查看
摘要:
十一放假,人就变的有点松散,好久都没有写点东西了,这次的内容可能跨越度有点大,但是因为觉得内容特别有意思,所以特定提前先将这部分先写出来了。这次主要是关于Testerhome的用户登录,授权的功能正文:
TesterHome的Api上面就只有简单一句说明:使用标准的 OAuth 2 实现登录,获得 access_token 信息。
以及相应的请求路径。这个对于OAuth2基本不了解的我来说就犯难了,所以找到了腾讯开发平台OAuth2.0开发文档这里就说明的很详细了,我们总共就是要做两件事:
获取Authorization Code
通过Authorization Code获取Access Token
不过这里还遗留一个问题刚才的链接上面说明
适用于需要从web server访问的应用,例如Web/wap网站
移动端的app应该不是使用这种方式的,再次浏览了下腾讯开放平台的网页确实发现了使用Implicit_Grant方式获取Access_Token
按照上面的构造的url请求结果显示的是
说明TesterHome的response_type没有token这种类型。这里我只是疑惑是不是testerhomew不支持这种了。
继续往下,按照刚才的步骤我们需要获取到Authorization Code,想要获取到这个我们需要做一些准备工作-创建一个应用:
注册应用
这里我使用的应用名直接是“TesterHome”
回调地址按照提示信息的使用“urn:ietf:wg:oauth:2.0:oob”
点击提交。OK,我们已经成功的创建一个需要授权的应用了,这里面就有一个很重要的client_id以及client_secret。
好了 我们先构造第一个获取Authorization Code的URL请求吧。
https://testerhome.com/oauth/authorize?response_type=code&client_id=402e7adf&redirect_uri=urn:ietf:wg:oauth:2.0:oob
这个就是我们需要用到的授权码了。
再来通过授权码就能够获取到我们要用的accesstoken。
这里需要注意一点文档上面有一个坑,获取accesstoken的请求并不是get方法而是post。这个问题真是纠结了我好久。
这里就获取到了我们要用的access_token了。关于refresh_token是用来重新请求一个access_token不用重新登陆用的,在文档里面也有说明。
下来看看App具体的流程。(代码就不帖了。。实际上很多都是参考之前TesterHome Natvie App实现的)
相关文章推荐
- 芒果iOS开发之利用U盘给Mac重新安装系统
- Android.mk中call all-subdir-makefiles和call all-makefiles-under,$(LOCAL_PATH)的区别(转载)
- iOS动画组基础
- Android_Junit测试及Debug调试
- Android Native Browser下载存储路径选择
- Android - TextView 设置行间距、行高
- iOS9适配 之 关于info.plist 第三方登录 添加URL Schemes白名单
- [iOS开发项目-10] 图片轮播器
- weinre,移动端远程调试工具(适用于Android和Windows Phone)
- Android实现组合键监听功能
- iTween.MoveTo用法
- Android 数据库升级解决方案
- iOS:quartz2D绘图(在PDF文件上绘制图片)
- A. Lala Land and Apple Trees
- ios9新特性概述
- Cocos-2d-3.8学习之路:(1)helloworld-新项目的创建。
- domManip之prepend,append,before,after,replaceWith方法
- iOS开发 ----- 自动循环滚动或引导页效果
- Android Framework涉及的Java语法(二)——泛型(Generic)
- Android中pendingIntent的深入理解