Android上获取Pocket Oauth授权说明

https://getpocket.com/developer/docs/authentication
上面的链接是官方文档,写的很详细了,这里做下简要记录,作为官方文档的辅助参考。

Step 1 获取consumer key

通过http://getpocket.com/developer/apps/new 创建一个应用,获取consumer key。比如:1234-abcd1234abcd1234abcd1234

Step 2 获取request token

通过post请求,获取request token,请求的content type可以是x-www-form-urlencoded或者json,参考官网示例。
Method URL:
https://getpocket.com/v3/oauth/request

参数 类型 说明
consumer_key String 第一步时拿到的
redirect_uri String 第四步时需要用到,为"pocketapp"+consumer key开头部分数字"+":authorizationFinished",比如你的consumer key是1234-abcd1234abcd1234abcd1234,这里可以填pocketapp1234:authorizationFinished
state String 上面两个参数是必填,这个是可选参数,如果填了,在后续的授权中都会返回这个字符串,即作为meta data使用,没需求可不填

请求成功后会返回request token。贴个官方的示例:

Android上获取Pocket Oauth授权说明_第1张图片
image.png

上面的code就是request token。

Step 3 引导用户到pocket 网页上授权

可以使用自带浏览器(Intent方式)或者Webview打开下面的地址,让用户授权。
https://getpocket.com/auth/authorize?request_token=YOUR_REQUEST_TOKEN&redirect_uri=YOUR_REDIRECT_URI
这里的request_token是在Step 2时拿到的code。

Step 4 获取授权成功的通知

授权成功后,用户点击页面上的返回应用程序,浏览器会打开你之前填的redirect_uri,如:pocketapp1234:authorizationFinished。为了响应这个操作,你用于管理授权的Activity需要注册对应的Intent Filter,如下是一个示例:


     
     
     
     

android:scheme要改成你自己的。

Step 5 获取 access token

现在你可以使用step 1时拿到的consumer key和step 2时拿到的request token 去得到access token。Access token是真正用来获取用户资源的token。通过post请求,并带上consumer_key和code参数获取access token
Method URL:
https://getpocket.com/v3/oauth/authorize

参数 类型 说明
consumer_key String Step 1时拿到的
code String Step 2时拿到的request token

附上官方的示例:

Android上获取Pocket Oauth授权说明_第2张图片
image.png

Step 6 获取资源

拿到access token后,就可以使用下面的接口,获取用户的资源了。
Add
Modify
Retrieve

你可能感兴趣的:(Android上获取Pocket Oauth授权说明)