网站接入之使用人人网帐号登陆(直接使用OAuth 2.0来授权)

人人网API不是特别好。
下面是我自己的步骤,希望对需要的人有帮助。

总的来说,网站连接人人网,关键步骤如下:
1、去人人网申请应用,取得API_KEY,Secret Key.
2、人人网接口适用OAuth 2.0,而OAuth 2.0最关键的是access_token,通过两步即可取得实习的access_token。(用户授权后重定向取得code,再后台访问人人网开放接口取得access_token)
3、有了access_token就可以访问人人网的很多接口了,诸如取得用户信息,好友信息等。

----------------------------------------
1、登陆页:(在应用中嵌入一个浏览器控件,并使用客户端流程定向控件到人人OAuth 2.0 Authorize Endpoint)
<a href="https://graph.renren.com/oauth/authorize?client_id={client_id}&amp;response_type=code&amp;redirect_uri=http://graph.renren.com/oauth/login_success.html&amp;display=page">用人人账号登陆</a>


解释:
https://graph.renren.com/oauth/authorize 是指向人人网OAuth 2.0
client_id 是你应用的API Key
response_type 是固定格式 = code
redirect_uri 是操作返回的页面,此处用了人人网提供的跳转成功页

效果图----点击上面(CODE)的链接:
提示登陆(若已登陆此页会跳过)
网站接入之使用人人网帐号登陆(直接使用OAuth 2.0来授权)
授权页
网站接入之使用人人网帐号登陆(直接使用OAuth 2.0来授权)

点击连接,人人网会重定向到之前你访问的链接的redirect_uri属性,网页URL显示地址如下:
http://graph.renren.com/oauth/login_success.html?code=aaasdGq898TE1Kmhlc4cUHX8pGGwddfu
如图:


注:此处的code值就是我们等下要来取得access_token的关键字段。
每一个Authorization Code的有效期为一个小时,并且只能使用一次,再次使用将无效。

2、取得access_token值
取得access_token请求地址如下:
https://graph.renren.com/oauth/token?grant_type=authorization_code&
     client_id=YOUR_API_KEY&redirect_uri=YOUR_CALLBACK_URL&
     client_secret=YOUR_SECRET_KEY&code=THE_CODE_FROM_ABOVE

解释:此处的code值就是我们上面取得的code值

访问此接口,得到的是JSON格式的字符串,我们后台可以利用JSON-LIB.JAR包直接将String转成JSONObject,此处就不加以缀述。

注:取得access_token要用到Secret Key,原则上密码不能暴露在客户端,所以我们通过后台Httpclient来实现。



3、有了access_token,我们就能访问人人网其它接口来获取我们想要的信息了。

人人API列表: http://wiki.dev.renren.com/wiki/API#.E8.B0.83.E7.94.A8API

你可能感兴趣的:(OAuth)