| 1 | | [[Image(微博桌面截图_20150226085605.jpg)]] |
| | 1 | = 1、相关文件 = |
| | 2 | |
| | 3 | == 1.1、原型图: == |
| | 4 | * [[http://trac.pc.com.cn/iphone/wiki/pconline_price_2.0.0]] |
| | 5 | |
| | 6 | == 1.2、接口文档: == |
| | 7 | * [[http://trac.pc.com.cn/pc_best/wiki/app2.0]] |
| | 8 | |
| | 9 | == 1.3、设计稿: == |
| | 10 | * [[http://192.168.50.117/2015/2015.02.09dn/index.html]] |
| | 11 | |
| | 12 | |
| | 13 | == 1.4、客户端跳转协议说明: == |
| | 14 | * [[http://trac.pc.com.cn/pc_best/wiki/app2.0/protocol]] |
| | 15 | |
| | 16 | 类似于站内跳转,客户端的此种实现都需要根据文档中预先声明好的跳转协议进行跳转,所以在对应的地方需要提供这些协议的url给客户端。 |
| | 17 | |
| | 18 | 文档刚刚给到,可能有些需要跳转到还需要配合客户端进行调整(跟mrobot协商是把跳转协议放在哪边比较好的,一般放到mrobot那边实现) |
| | 19 | |
| | 20 | == 1.5、客户端图片尺寸问题: == |
| | 21 | * [[http://trac.pc.com.cn/pc_best/wiki/app2.0/image]] |
| | 22 | |
| | 23 | 接口原则上只返回原图给客户端,客户端根据自己的需要读取具体尺寸的图片。 |
| | 24 | |
| | 25 | == 1.6、App 2.0页面组装说明文档: == |
| | 26 | * [[http://trac.pc.com.cn/pc_best/attachment/wiki/app2.0/%E8%81%9A%E8%B6%85%E5%80%BC2.0%E6%8E%A5%E5%8F%A3%E8%AF%B7%E6%B1%82%E5%92%8C%E5%B1%9E%E6%80%A7%E8%AF%BB%E5%8F%96%E8%A7%84%E5%88%99.doc]] |
| | 27 | |
| | 28 | 客户端开发根据这个文档读取接口数据 |
| | 29 | |
| | 30 | == 1.7、app2.0接口规范说明: == |
| | 31 | * [[http://trac.pc.com.cn/pc_best/attachment/wiki/app2.0/]] |
| | 32 | |
| | 33 | |
| | 34 | = 2、代码结构: = |
| | 35 | |
| | 36 | == 2.1、代码分支 == |
| | 37 | |
| | 38 | 目前app2.0开发使用了独立的分支: |
| | 39 | |
| | 40 | [[Image(20150408001.png)]] |
| | 41 | |
| | 42 | 最新的app2.0接口相关代码已经提交到app2.0分支中,并且把该分支合并到了v7.0中,以后使用v7.0继续开发即可,app2.0分支作为一个备份。 |
| | 43 | |
| | 44 | == 2.2、代码结构 == |
| | 45 | |
| | 46 | App2.0的代码存放到了一个单独的包中: |
| | 47 | |
| | 48 | [[Image(20150408002.png)]] |
| | 49 | |
| | 50 | == 2.3、下面是每个包的相关说明: == |
| | 51 | |
| | 52 | > controller |
| | 53 | |
| | 54 | App接口相关的controller,使用Spring MVC的Controller编写的接口(非JSP)存放到这里,目前该目录没有使用,都以JSP的方式进行编写。 |
| | 55 | |
| | 56 | > interceptor |
| | 57 | |
| | 58 | Spring的自定义拦截器,一般配合controller包使用,现在暂时没有用到 |
| | 59 | |
| | 60 | > json |
| | 61 | |
| | 62 | JSON相关的辅助类。由于接口都是JSON格式的数据,所以返回的数据需要统一转换为JSON格式,目前接口都是使用fastjson(https://github.com/alibaba/fastjson)进行解析的,这个包也是fastjson相关的辅助类。 |
| | 63 | |
| | 64 | > result |
| | 65 | |
| | 66 | 接口返回结果辅助类,通过使用该包中提供的方法自动把接口转化为约定的格式。 |
| | 67 | |
| | 68 | > servlet |
| | 69 | |
| | 70 | 接口相关过滤器 |
| | 71 | |
| | 72 | > utils |
| | 73 | |
| | 74 | 辅助类 |
| | 75 | |
| | 76 | > vo |
| | 77 | |
| | 78 | 接口相关的VO类,不建议其他地方也使用这里的vo,因为里面很多属性都是按照客户端的要求特别编写的,用在其他的地方不太恰当。 |
| | 79 | |
| | 80 | === 一个接口的格式大致如下: === |
| | 81 | |
| | 82 | [[Image(20150408003.png)]] |
| | 83 | |
| | 84 | == 2.3、JSP文件结构: == |
| | 85 | |
| | 86 | [[Image(20150408004.png)]] |
| | 87 | |
| | 88 | {{{ |
| | 89 | #!java |
| | 90 | http://best.pconline.com.cn/intf/app/topic/getTopicList.jsp... |
| | 91 | |
| | 92 | // 通过Nginx配置,接口路径映射为: |
| | 93 | |
| | 94 | http://best.pconline.com.cn/app/topic/getTopicList.do... |
| | 95 | }}} |
| | 96 | |
| | 97 | 按照模块把接口存放到不同的文件夹中,其中 /my 文件加下表示需要登录才可以访问的接口。 |
| | 98 | |
| | 99 | |
| | 100 | = 3、新增项目配置 = |
| | 101 | |
| | 102 | > Nginx配置 |
| | 103 | |
| | 104 | > 新增数据脚本 |
| | 105 | |
| | 106 | > 新增项目配置 |
| | 107 | |
| | 108 | |
| | 109 | = 4、现在app的开发模式 = |
| | 110 | |
| | 111 | 聚超值提供纯JSON数据的后台接口 |
| | 112 | |
| | 113 | mrobot对聚超值后台的接口进行转发,获取到需要的属性,并渲染成wap页面。 |
| | 114 | |
| | 115 | |
| | 116 | = 5、跟进计划(2015/04/08) = |
| | 117 | |
| | 118 | 跟进mrobot开发的反馈进行调整 |
| | 119 | |
| | 120 | |
| | 121 | |
| | 122 | |
| | 123 | |
| | 124 | |
| | 125 | |
| | 126 | |
| | 127 | |
| | 128 | |
| | 129 | |