帮助中心  /  第三方客户登录接口

第三方客户登录接口

接口功能说明

通过该接口方案,可以完成使用自己系统的用户体系、业务逻辑,授权用户参与活动,代替使用微信授权获取用户流程。请仔细阅读本文档活动授权时序图,完成接口对接开发。

因使用第三方客户登录接口后,人人秀平台涉及和微信平台相关的功能将无法使用,比如微信支付等功能。

该方案包含3个接口,《第三方授权》和《人人秀授权》用于活动访问授权;《登录后完善信息推送接口》用于接收用户登录后人人秀推送的用户填写的完善信息。


选择登录时方式

  • 方式一:参与活动时登录,即进入活动后,点击参与活动时,请求跳转到第三方授权页面,完成授权后再进入活动;

  • 方式二:访问活动时登录,即进入活动时,直接跳转到第三方授权页面,完成授权后再进入活动;

  • 支持完善信息推送,客户登录设置开启登录后完善信息,完善后自动推送第三方数据接口。

  如何设置接口登录方式


访问活动时登录授权流程

  • 1. 用户打开h5活动地址,进入活动;

  • 2. 进入活动,人人秀主动跳转【第三方授权】(需在人人秀开放平台配置)并传入h5_guid等参数。

  • 3. 通过第三方授权】 完成自己业务逻辑后,调用【人人秀授权接口】生成 h5活动授权链接并主动重定向,完成跳转进入活动。


图解用户活动授权时序图:

image.png

图解用户访问授权流程图

image.png


1.第三方授权接口

开发说明

  • 该接口由第三方开发者提供给人人秀调用,必须设置该接口地址,支持页面地址或接口地址

  • 人人秀活动会重定向到[ 第三方授权URL], 需根据自有业务获取或判断当前用户登录信息或身份,再调用 [人人秀授权接口] 

  • 每次开发者在接收到人人秀授权请求时,必须调用 [人人秀授权接口] 生成授权链接再跳转,否则不会进入人人秀活动

  • 第三方开发者,接收到参数,必须先将参数urldecode处理,然后计算签名

请求地址

[ 第三方授权页面网址]  

请求方式

重定向

参数说明      

参数名称

是否必须

类型

说明

app_key

string(32)

人人秀平台分配的AppKey

time_stamp

int(13)

1970-01-01开始的时间戳,精确到毫秒

sign

string(32)

根据签名算法计算所得,如何计算签名

h5_guid

string(6)

人人秀平台下活动唯一标识,6位字符串,如何查看

share_openid

string(128)

活动分享人openId,仅开启活动传播关系功能时有值(按需付费)

redirect

string(200)

h5活动请求的地址


请求参数示例

{

    "app_key""96c84928b1dce057d110ea3b3880fc83",

"time_stamp":"1543999047492",

"sign":"051BF3517D40AB9D7D6B45EF6E4EB7F9",

"h5_guid""123456",

"redirect""https%3A%2F%2Fca.rrx.cn%2Fh%2Fpages%2Fwsiteh5%2Findex%3FwsiteGuid%3D4rupzi%26v%3D1"

}


注意事项

  • 不建议使用拼接参数的方式使用第三方客户登录授权,首次访问链接会携带,多页面间跳转可能会导致参数丢失。

  • 建议使用,用户登录状态授权,即人人秀请求第三方客户登录接口时,第三方获取当前用户登录状态然后通过接口返回用户信息,授权参与活动。


2.人人秀授权接口

开发说明:

  • 该接口由人人秀提供给第三方开发者调用,第三方开发者调用该接口生成人人秀活动授权链接来完成授权访问

  • 生成的授权链接有效期为10分钟

  • 授权链接调用后就会失效,每次使用都需要调用接口重新生成链接,否则会提示签名过期

请求地址

https://open.rrx.cn/api/v1/thirdAuth/login

请求方式

重定向

参数说明

参数名称

是否必须

类型

说明

app_key

string(32)

人人秀平台分配的AppKey

time_stamp

int(13)

1970-01-01开始的时间戳,精确到毫秒

sign

string(32)

根据签名算法计算所得,如何计算签名

openid

string(128)

活动用户唯一标识

人人秀识别用户唯一性判断依据 

nickname

string(60)

用户昵称  

headimgurl

string(200)

用户头像地址

注意:如有海报合成,需允许图片域名跨域

h5_guid

string(6)

h5标记来自人人秀哪个活动

人人秀调用授权接口时回传,参见接口1

params

string(200)

其他参数,json字符串对象

第三方附带参数,在人人秀积分等接口返回

redirect

string(200)

当前活动地址,用于授权成功后跳转

人人秀调用授权接口时回传,参见接口1

fail_url

string(200)

授权失败,跳转地址

第三方自定义跳转地址

响应示例

成功

直接跳转h5活动页面

失败

如果fail_url不为空 则跳转到fail_url,为空则返回错误信息{"result":1,"msg":"授权失败"}


对接步骤

第一步,计算签名,参照API接口规范及签名算法

第二步,对参数进行urlencode编码处理

第三步,拼接授权链接

    例如:https://open.rrx.cn/api/v1/thirdAuth/login?app_key=testkey&time_stamp=123&sign=testsign&openid=123&nickname=%E5%.&h5_guid=h5_guid&redirect=redirect

第四步,重定向到授权链接

    例如:

    JavaScript重定向

        window.location.href='授权链接';

    java 重定向

        response.sendRedirect(授权链接)


数据注意事项:

  • 1.计算签名时,不要对参数进行urlencode处理

  • 2.拼接授权链接时,需要对参数进行urlencode处理,避免乱码和错码

  • 3.h5_guid、redirect,可以从人人秀调用第三方授权接口时传递的参数列获得

  • 4.headimgurl,如需生成海报必须允许该图片地址支持跨域访问,因合成海报需要canvas技术合成图片

  • 5.注意接口地址区分大小写 例如:https://open.rrx.cn/api/v1/thirdAuth/login


请求示例

 

var redirectStrUrl= https://open.rrx.cn/api/v1/thirdAuth/login? app_key=96c84928b1dce057d110ea3b3880fc83

& time_stamp = 1543999047492

& sign = 051BF3517D40AB9D7D6B45EF6E4EB7F9

& openid = gb_1543999047492

& nickname =urlEncode("小张子")

& headimgurl =urlEncode("https://thirdwx.qlogo.cn/mmopen/vi_32/Q0j4TMaE…zXTfZQugNBA/132")

& h5_guid = 123456

& redirect = urlEncode(redirect)

window.location.href= redirectStrUrl;


3.小程序页面授权模式(可选)

开发说明:

  • 该模式是为了方便仅小程序环境授权自有用户登录场景,可直接配置小程序页面地址。

  • 该接口由第三方开发者提供给人人秀调用,必须设置该页面地址,在嵌入小程序环境,授权会直接跳转该页面

  • 人人秀活动会跳转到[ 第三方小程序页面], 需根据自有业务获取或判断当前用户登录信息或身份,再调用 [人人秀授权接口] 。

  • 每次开发者在接收到人人秀授权请求时,必须调用 [人人秀授权接口] 生成授权链接再跳转,否则不会进入人人秀活动

  • 第三方开发者,接收到参数,必须先将参数urldecode处理,然后计算签名

请求地址

[ 第三方授权小程序页面地址]  

请求方式

重定向

参数说明      

参数名称

是否必须

类型

说明

app_key

string(32)

人人秀平台分配的AppKey

time_stamp

int(13)

1970-01-01开始的时间戳,精确到毫秒

sign

string(32)

根据签名算法计算所得,如何计算签名

h5_guid

string(6)

人人秀平台下活动唯一标识,6位字符串,如何查看

share_openid

string(128)

活动分享人openId,仅开启活动传播关系功能时有值(按需付费)

redirect

string(200)

h5活动请求的地址


请求示例:

pages/xxx?app_key=APPKEY&h5_guid=H5GUID&redirect=urlEncode(REDIRECT)&time_stamp=TIMESTAMP&sign=SIGN


注意事项:

  • 嵌入小程序活动,仅需配置小程序授权页面地址,人人秀活动授权时会跳转到该页面申请授权。

  • 兼容非小程序环境时访问人人秀活动,则需配置小程序APPID,可以引导用户跳转自己小程序打开活动。

  • 可与第三方客户登录接口配合使用,如果设置第三方客户登录接口地址,则仅小程序环境才会跳转小程序授权页面。

  • 接口签名需在后端生成,防止密钥泄露。


4.登录后完善信息推送接口(可选)

开发说明:

  • 该接口只有在用户开启了【登录后完善信息】功能后,才会推送用户数据

  • 该接口由第三方开发者提供给人人秀调用,必须设置该接口地址。

  • 用户在人人秀平台登录后,完善用户数据后,由人人秀平台统一推送给第三方数据接口,只推送一次,无需返回值。

请求地址

[ 第三方接收完善信息数据接口]  

请求方式

POST方式,Content-type:application/x-www-form-urlencoded

参数说明      

参数名称

是否必须

类型

说明

app_key

string(32)

人人秀平台分配的AppKey

time_stamp

int(13)

1970-01-01开始的时间戳,精确到毫秒

sign

string(32)

根据签名算法计算所得,如何计算签名

h5_guid

string(6)

人人秀平台下活动唯一标识,6位字符串

openid

string(128)

活动用户唯一标识  

nickname

string(60)

用户昵称  

headimgurl

string(200)

用户头像地址

form_data

string(2000)

用户完善信息表单内容,json字符串


form_data 参数说明

注意数据类型是字符串,不是对象。

参数名称

是否必须

类型

说明

name

string

表单字段名称,例如姓名

value

string

表单字段值,例如张三


请求参数示例

{

    "app_key""96c84928b1dce057d110ea3b3880fc83",

"time_stamp":1543999047492,

"sign":"051BF3517D40AB9D7D6B45EF6E4EB7F9",

"h5_guid""123456",

"openid""gb_1543999047492",

"nickname""小张子",

"headimgurl""https://thirdwx.qlogo.cn/mmopen/vi_32/Q0j4TMaE…zXTfZQugNBA/132",

"form_data":[

         {"name":"姓名","value":"张三"},

         {"name":"手机号","value":"15811111111"},

]

}




相关文档