- https
通信层面的加密,防止中间人攻击及dns劫持,https带来更多的消耗 - 内容签名
作为第三方平台,通信秘钥只是保护了外人无法窃听,但不能保证平台的使用者互相调用。私钥+内容签名 确保了平台间的使用者不能互相串门。通信秘钥到店铺级别,每个店铺一个,允许变更。
签名算法比较多,可以借鉴微信或者淘宝的签名算法,目前是本司采用的是md5签名算法。 - trace机制
提供友好的trace机制,traceID一般被内部服务使用,客户端到请求采用requestID来作为标示,requestID一般可以采用uuid 来作为请求ID - cdn使用与否
cdn对于图片及比较大的文档类有较好的作用,但是对于交易类的实时性较高的没用太大作用。(这里指的是传统的cdn,非直播视频类的cdn)。 - get vs post
get请求更类似一种幂等请求,由于传统的cdn只支持get语法,因此我们无法像淘宝,京东的类似所有的api都是post方式。
get和post的方式应该尽量符合restful的语义描述 - 小流量路由
发版机制需要保持ABtest和灰度机制,这些借助于服务的路由机制,路由需要有个路由key,我们支持到店铺级别的路由发版机制,因此路由key需要跟店铺相关,店铺一旦绑定后会有唯一的shopToken来识别是哪家店铺,shopToken在服务端来做路由规则,无需在传递shopID。token即为路由key。 - 统计
客户端的类型 appKey,appName
客户端的版本 appVersion - 日志
核心交易及数据日志
相关设备状态统计日志
崩溃等错误日志
用户操作日志
pc及移动客户端的改进
- 支持https
- 支持appKey,appVersion
- 核心交易日志统计及上传
- 绑定及用户登陆统一切换到token和passport
- 支持requestID作为traceID,requestID在弹出错误的时候,携带出来。