API 设计
atian25 opened this issue · comments
TZ | 天猪 commented
@fengmk2 有空可以帮忙看看这个库的 API 设计是否合理.
目前纠结的点是, 如果服务端返回的状态码是错误, 是否要抛错?
当前的设计是:
- 绝大部分的 API, 当状态码为错误的时候, 直接 throw error, 参见 client.js#L76
- user.get / department.get 这些比较常用的, 就不 throw, 返回 undefined
- 支持全局的 options.ignoreError 配置
fengmk2 commented
404 的在 get场景不应该抛错,返回 null。
其他基本都应该抛错,除非是服务端明确应该忽略的错误
fengmk2 commented
ignore error全局配置很危险的,为何要忽略?
TZ | 天猪 commented
之前的设想是, 给开发者选择使用方式, 是 try 还是 自己判断 errcode
fengmk2 commented
既然选择了 co 模式,throw error + try catch 才是标准模式,errcode 那个就是 callback。
TZ | 天猪 commented
ok, 那我等会干掉.
顺便, 这种的单测其实挺麻烦的, 譬如 user 那里, 测试 delete... 删除多了就超 API 上限了 -.-!!
fengmk2 commented
mock server api
TZ | 天猪 commented
这么薄的 wrap, mock 的话好像就没啥好测了. 如果对方 api 变更, 也感知不到吧?
fengmk2 commented
基本流程也是真实请求的,然后大量重复调用的 mock ,确保不超标。
TZ | 天猪 commented
我这个也是,但还是有一定受限的。