您好,欢迎访问三七文档
会员免注册登录接口1.接入流程1、将买家登录的email信息传递给支付宝3、是,返回userid给商户、否返回错误4、商家网站根据userid做为身份识别并补全注册信息。2.安全规范2.1.数字签名数据传输过程中的数据真实性和完整性,我们需要对数据进行数字签名,在接收签名数据之后进行签名校验。2.1.1.签名机制待签名数据是请求参数按照以下方式组装成的字符串:请求参数按照参数名字符升序排列,如果有重复参数名,那么重复的参数再按照参数值的字符升序排列。所有参数(除了sign和sign_type)按照上面的排序用&连接起来,格式是:p1=v1&p2=v2。调用某接口需要以下参数:service=user_authentication,partner=20880063000,email=test@msn.com那么待签名数据就是:email=test@msn.com&partner=20880063000&service=user_authentication注意事项:没有值的参数无需传递,也无需包含到待签名数据中。签名时将字符转化成字节流时指定的字符集不_input_charset保持一致。商家网站支付宝网站2、根据传入的email判断是否是支付宝会员如果传递了_input_charset参数,这个参数也应该包含在待签名数据中。根据HTTP协议要求,传递参数的值中如果存在特殊字符(如:&、@等),那么该值需要做URLEncoding,这样请求接收方才能接收到正确的参数值。这种情况下,待签名数据应该是原生值而丌是encoding之后的值。例如:调用某接口需要对请求参数email进行数字签名,那么待签名数据应该是:email=test@msn.com,而丌是email=test%40msn.com。2.1.2.签名方式按照sign_type参数指定的签名算法对待签名数据进行MD5加密。1.3.接入URL接入方式(GET/POST)提交2.参数表字段名变量名类型说明可空协议参数接口名称serviceStringuser_authenticationN合作伙伴IDpartnerString(16)合作伙伴在支付宝的用户IDN返回页面return_urlString合作伙伴接受处理结果的页面N签名signString见签名机制N签名方式sign_typeString见签名方式N参数编码字符集_input_charset默认为:GBK商户系统不支付宝系统之间交互信息时使用的编码字符集。商户可以通过该参数指定使用何种字符集对传递参数进行编码。同时,支付宝系统也会使用该字符集对返回参数戒通知参数进行编码。N业务参数用户EmailemailString(100)N比如签约的支付宝帐号安全校验码:xxxxxxxxxxxxxxxxx商家合作伙伴id:2088002037527206=GBK&partner=2088002037527206&return_url=http%3A%2F%2Ftest1.360eb.com%2Flogin.php&service=user_authentication&sign=5060cb3c411f3feb9860f39289e74a5f&sign_type=MD5根据签名机制,我们首先对请求参数进行排序,结果如下:_input_charset=GBKpartner=2088002037527206return_url==user_authentication使用“&”符号把参数串联起来,产生待签名数据:_input_charset=GBK&partner=2088002037527206&return_url==user_authentication计算sign值这个实例我们前面已经假设使用MD5签名算法,并且给出签名密钥为abc123,那么在计算sign值之前,就需要在待签名数据的后边加上签名密钥,即最终的待签名数据如下:_input_charset=GBK&partner=2088002037527206&return_url==user_authenticationabc123根据请求参数sign_type来判断使用哪种签名算法,这里我们采用MD5签名算法,最终计算出来,sign=5060cb3c411f3feb9860f39289e74a5f输出参数表字段名变量名类型说明可空协议参数签名signString见签名机制N签名方式sign_typeString见签名方式N成功标志is_successStringT/FN业务参数用户IDuser_idString(16)N通知IDnotify_idString支付宝通知流水号,合作伙伴可以用这个流水号询Y问支付宝该条通知的合法性输出格式以GET方式将上述输出参数返回给return_url如:=x&b=y&c=z=T¬ify_id=RqPnCoPT3K9%252Fvwbh3I%252BODmVGCJQUFGUIPem3oV%252B2YTWl8W6w5obTSbTctvfnYafpp%252Fm2&user_id=2088002053153634&sign=456a7e77b875702eede8caa2bc7abfc7&sign_type=MD5系统接收到商户系统发起的请求,处理成功后返回的参数中同样包含有参数sign、sign_type,境外商户需根据sign_type计算sign值,最终检验支付宝系统返回的sign值.商家返回来的user_id作为买家在自己网站登录的唯一标识,买家第一次购买商品时候补全相关会员信息,第二次再在本网站,通过快速购买通道(免注册登录入口)登录后,根据返回来的唯一标识user_id来获取该会员在网站上的注册信息。
本文标题:支付宝登录接口文档
链接地址:https://www.777doc.com/doc-243084 .html