h5 联调测试流程

1、申请测试 合作账号和账户密码,并参考基本注意事项。
2、根据文档接入 H5登录入口 的URL,并加载对应页面。
3、调用H5的相关接口,进行护士上门单流程。
4、测试完毕后,联系医护到家人员开通正式环境账户后即可。

h5 注意事项

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.com/yihudaojia/intoYihuPage
  正式地址:http://h5.yihu365.com/yihudaojia/intoYihuPage
  请求方式:get请求

参数 是否必填 大小 说明
partner VARCHAR2(20) 第三方名称
phone VARCHAR2(20) 电话号
thirdPartId VARCHAR2(20) 第三方提供自定义的thirdPartId来标识每一个用户
sign VARCHAR2(20) 签名,用于验证第三方,签名方法见签名验证

四、返回信息

  成功:若带有电话跳转医护主页,若没有电话跳转医护快捷登录页面
  失败:如果验签不通过等问题,会跳转错误页面并带有相应错误信息
  失败返回码:
     0001 签名错误
     0002 partner为空
     0003 签名为空
     0004 thirdPartId标识为空
     0005 服务器异常
     9999 出现异常

H5接入常见问题

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 出现异常