go-workwx icon indicating copy to clipboard operation
go-workwx copied to clipboard

支持企业微信私有化部署版本

Open qhsong opened this issue 3 years ago • 4 comments

企业微信同时也支持私有化部署版本:https://work.weixin.qq.com/server 从文档这里看代码大部分和企业微信都兼容,但是有一些不兼容的,也有一些是比较特有的接口。

请问这里如果提PR的话,是单独维护一个分支好呢,还是在现有代码上做一些兼容逻辑好呢?

qhsong avatar Jul 12 '21 14:07 qhsong

有文档吗?给的链接是个落地页。

由于设计之初就预见到了有变更 API host 的需求,绝大部分代码不用动。除非动到了核心公共流程(鉴权流程、请求响应格式、错误码),否则直接往现有接口加就好了。不需要做任何区分对待,在 SaaS 企业微信上调用私有部署 only 的接口就让他报错就好了。

xen0n avatar Jul 12 '21 14:07 xen0n

目前没有太开放的文档,目前测试的结果看,大部分接口都是通的。 上传媒体文件接口,有一些字段有一点点typo的差异。 剩下的还没有使用过。

我看看怎么兼容一下,提个pr

qhsong avatar Jul 13 '21 03:07 qhsong

相同的接口请求参数名字不一样?优先跟企业微信的人反馈 bug 吧。。这不像是符合一般业务研发常识的 API 设计。需要给出必须这么做(给下游对接人为增加难度)的原因。他们能改掉是最好。否则可能需要起两个内部接口(execXxx 的 API 写法,以及相应 model 类型)然后想办法区分。这样的话一个 flag 字段也不可避免了。难受。

xen0n avatar Jul 13 '21 07:07 xen0n

是的,代码里各种islocal的判断看起来也不优雅。

qhsong avatar Jul 13 '21 14:07 qhsong