1、申请测试 合作账号和账户密码,并参考基本注意事项。
2、根据文档接入 H5登录入口 的URL,并加载对应页面。
3、调用H5的相关接口,进行护士上门单流程。
4、测试完毕后,联系医护到家人员开通正式环境账户后即可。
1、用户可以更改H5页面的UI及色调,需与医护到家相关运营人员沟通。
1.1 接口目的
本文档适用于第三方公司直接对接医护到家H5页面,提供相应的测试地址和正式地址
1.2 适用范围
对接医护到家H5页面的第三方公司
2.1 接入申请
向医护到家沟通对接,提供测试和正式的partner和 partner_key
2.2 签名验证
合作方需要,根据参数名称(除签名和空字符串)将所有请求参数按照字母先后顺序排序:key + value .... key + value,例如:将phone=123456789,partner=yihudaojia,thirdPartId =1234 排序为partner=TCL, phone=123456789, thirdPartId=1234,参数名和参数值链接后,得到拼装字符串partneryihudaojiaphone123141241thirdPartId1231 将partner_key=8r7wu241WztTtLA2 拼接到参数字符串尾进行md5加密后,再转化成大写
例如: partneryihudaojiaphone123141241thirdPartId12318r7wu241WztTtLA2
java: public final static String MD5(String s) { char hexDigits[] = { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f' }; try { byte[] strTemp = s.getBytes("UTF-8"); MessageDigest mdTemp = MessageDigest.getInstance("MD5"); mdTemp.update(strTemp); byte[] md = mdTemp.digest(); int j = md.length; char str[] = new char[j * 2]; int k = 0; for (int i = 0; i < j; i++) { byte byte0 = md[i]; str[k++] = hexDigits[byte0 >>> 4 & 0xf]; str[k++] = hexDigits[byte0 & 0xf]; } return new String(str); } catch (Exception e) { return null; } } //将参数值拼接成合法的待签名的字符串 public static String createLinkString(Map三、接口地址params,String partnerKey) { MD5 md5 = new MD5(); List keys = new ArrayList (params.keySet()); Collections.sort(keys); String prestr = ""; for (int i = 0; i < keys.size(); i++) { String key = keys.get(i); String value = params.get(key).toString; prestr = prestr + key + value; } System.out.println(prestr); return (md5.MD5(prestr+ partnerKey)).toUpperCase(); }
测试地址:http://th5.yihu365.cn/yihudaojia/intoYihuPage_V2
正式地址:http://h5.yihu365.cn/yihudaojia/intoYihuPage_V2
请求方式:get请求
参数 | 是否必填 | 大小 | 说明 |
---|---|---|---|
partner | 是 | VARCHAR2(20) | 第三方名称 |
phone | 否 | VARCHAR2(20) | 电话号 |
thirdPartId | 是 | VARCHAR2(20) | 第三方提供自定义的thirdPartId来标识每一个用户 |
sign | 是 | VARCHAR2(20) | 签名,用于验证第三方,签名方法见签名验证 |
成功:若带有电话跳转医护主页,若没有电话跳转医护快捷登录页面
失败:如果验签不通过等问题,会跳转错误页面并带有相应错误信息
失败返回码:
0001 签名错误
0002 partner为空
0003 签名为空
0004 thirdPartId标识为空
0005 服务器异常
9999 出现异常
Q:接口开发过程中遇到问题,该怎么办? A:合作意向明确后,医护到家将会建立专门的产品技术对接讨论组(微信群/QQ群),所有问题将在第一时间响应和解答。同时,也希望合作方可以及时响应并处理问题。
Q:时间紧迫,如何加快接入进度?
A:医护到家的技术对接、联调、测试等均能基本保证半天内响应跟进;H5接入的大部分工作量在第三方。建议如下:
1.前期的demo审核和接口开发过程同时进行;
2.UI部分建议严格按照UI规范调整之后再提交审核,以避免多次来回审核、修改浪费时间;
3.demo交互审核基本没问题后,即可开始进入页面开发流程;
4.自测需严格按照自测规范进行,发现bugs先行修复并整理记录后再提交验收。
Q:第三方如何判断用户是否登陆? A:根据URL中的手机号是否为空。如果用户在app登录了,传递到第三方页面上的phone就是加密的手机号码;如果用户没有登陆,第三方收到的手机号字段部分就为空,需要第三方页面唤起医护到家App登录。
Q:第三方H5页面可否出现第三方品牌logo/字样? A:医护到家希望给用户一致的品牌印象,合作方品牌暴露会让用户感到混乱,影响用户体验,所以不能够出现第三方品牌logo/字样。
Q:demo的审核流程是怎样的,需要花费多长时间?
A:大致流程与建议如下:
1.第三方根据医护到家UI规范修改样式
2.提交医护到家审核
3.根据医护到家审核结果进行修改
4.修改后的再次审核(3、4可能会重复多次)
5.医护到家审核完成。「2-5步一般耗时1周左右」
6.接口开发、联调;页面开发完成后,测试环境的UI验收
7.验收结果修改
8.医护到家确认验收合格「6-8步一般耗时2-3天」
Q:下单通知接口中的字段「服务开始时间」是什么? A:第三方可以定义为用户下单预约的上门时间。如果没有的话,可以传服务的预估上门时间/预估开始时间。
Q:第三方获取的医护到家access token的有效期和使用频次限制是多少? A:token的有效期是2小时,1小时之内只能调用获取两次accesstoken。
Q:第三方订单状态与医护到家订单状态(订单更新接口的orderStatus字段)如何对应映射关系? A:「预约中」「已接单」「服务中」「已完成」字段必须有要有对应的映射,具体映射关系,需与医护到家对应PM接口人共同讨论确认。
Q:订单查询接口是做什么用的? A:订单查询接口是当服务器出现问题导致订单没法同步的时候,医护到家客服等可以通过这个接口获取到订单消息。
Q:H5接入的第三方如何获取沙箱环境? A:第三方需联系医护到家产品接口人,向医护到家提供测试入口的URL,医护到家配置后同步Android测试包、iOS测试包给第三方。
Q:开发完成提交测试环境验收时,需要提供哪些资料?
A:需要向提交如下信息,用于医护到家测试、验收:
1.提交所有页面的性能测试报告「详见接口文档」
2.完整的业务流程说明/原型
3.测试用例+buglist
4.接单后台的测试环境/合作方端的测试包/贵方QA的配合测试
【注意】如果贵方提交的供测试版本问题很多,在我方测试通过率达不到95%以上,就会被视为验收不合格,直接返回贵方重新修改后再次提交,还请知悉。
0001 | 签名错误 |
0002 | partner为空 |
0003 | 签名为空 |
0004 | thirdPartId标识为空 |
0005 | 服务器异常 |
9999 | 出现异常 |