企业微信小白出坑记

2021-03-23

花了两周的工夫学习研讨企业微信,明天终于把前后端我要用到的几个次要API皆调通了。中央采坑有数,以是念做个小结,愿望后续象我一样的newbie能少奔忙一些弯路少踩一些坑。 最紧...

  花了两周的工夫学习研讨企业微信,明天终于把前后端我要用到的几个次要API皆调通了。中央采坑有数,以是念做个小结,愿望后续象我一样的newbie能少奔忙一些弯路少踩一些坑。

  最紧张的一句话

  深思那半个月的阅历,最激烈的感触感染就是必然要保障能看到体系的反应,也就是后盾日记。由于只有您看到了日记中提醒的信息,再到腾讯的开放社区(developers.weixin.qq.com)搜刮,普通皆会很快找到谜底。

  最起头我是用Chrome的开发者对象做调试,但没有晓得企业微信的jweixin-1.2.0.js包在Chrome中是没有输出info日记的。以是有些API我明显挪用了,但前台页面不任何反映,也看不到后盾日记输出,百思不得其解。厥后换成微信开发者对象,一会儿看到那么多提示信息,才如梦初醒:)但是没多久,我又正在微信开发者对象中遇到了近似的问题:页面出反映,后盾出日记。由于有了后面的履历,我测验考试着换到Chrome中调试,终于再次看到了日记输出。。。但那仍是不敷,有些前端接口好比openUserProfile无论是Chrome仍是微信开发者对象皆没有撑持调试,只能用企业微信的客户端停止调试,这时候若是念看日记怎么办呢?颠末一番搜刮,本来另有一个神器vconsole!有了她,便可以正在企业微信客户端看到输出的日记啦。这个对象的详细用法我便没有多道了,网上一搜一大把――那真是一个最好的期间,您只需晓得一个关键词,便可以翻开一个新世界:)

  至此,若是只能对入门的初学者道一句话,我念道:

  当您看不到前台的反映也看不到后盾日记的时间,记得切换调试对象!

  框架选型

  这里谈一谈企业微信前中后盾的选型问题。正在着手筹备开辟之前,我对以后主流的开辟框架做了一番相识,终极选型以下

  1、 前端是Vue:现阶段十分风行的优异前端框架,又是中国人写的,民网上全套中文的文档、教程、册本,十分便利。特别是全中文的视频教程十分实用。

  2、 后盾是Java:用SpringBoot写微效劳,Docker实现容器化布置,Nginx做负载平衡跟反向代办署理。来由特殊简略:我用Java写了二十年的顺序了,连说梦话皆是用Java语言:)当然,最紧张的是,正在企业应用领域,Java依赖成熟的生态依旧是义无反顾的霸主。

  3、 数据库是MongoDB:这里要强烈推荐一下。MongoDB是文档数据库的代表作。正在文档数据库范畴的开山之作该当是Lotus Notes,我正好是CLP(Certified Lotus Professional),以是对文档数据库也是情有独钟。当然最感动我的是MongoDB的这个特色:用MongoDB替换关系数据库后,相关的数据接见代码会降低10~40倍!!!那是多年夜的服从晋升啊。特别正在替代后,本来正在关系数据库必需花大批工夫思量的schema变换、读写离散、分库分表、多点容灾等等问题悉数被MongoDB官方的产物功用文雅、轻松的化解。这里再推举下MongoDB中国区的扛把子唐建法正在极客工夫的课程《MongoDB妙手课》,我就是被这篇教程带入了MongoDB的世界。

  对象清单

  1、 前端开发工具用了HBuilderX:由于前端框架用了Vue,HBuilderX又是Vue官方推举的,以是瓜熟蒂落了,实际的利用感触感染也的确不错。那两款软件皆是国产的,感到国产软件越做越精细了。

  2、 前端调试对象正在开篇道过了,就是微信开发者对象、Chrome、vconsole三款对象。再次安利酷爱的开发者:当您看不到前台的反映也看不到后盾日记的时间,记得切换调试对象。

  3、 Java开发工具用了Eclipse:这个也出啥道的,虽然IDEA的软文漫山遍野,实在两款对象不甚么实质不同,Eclipse又是开源收费的,各类功用插件一大把,以是懒得换了。

  小顺序仍是H5

  实在我是先花了两周工夫正在企业微信上用小顺序做了一些开辟。成果发明有一个悖论:企业微信的大部分前端接口必需利用小顺序的secret,但小顺序不上架之前便不secret,而求小顺序上架必需人工审核,审核要求小顺序必需是实现开辟。。。大概是我太笨,不明白腾讯的政策,既然企业微信是正在企业外部用的,为啥借须要腾讯去审核?但我的确是正在那一步卡住了,才回头当真面临这个魂灵的拷问:我为何用小顺序而不是H5?

  不能不认可,一下去便用小顺序是因为这是腾讯的嫡派,无论是后面的开发工具仍是前面的原生云开辟撑持皆存在极大的劣势。不外,小顺序因为出生工夫较短招致各类小问题频出,又要学习一套全新的编程方法,云开辟对企业应用的框定跟约束等问题也的确须要当真思量跟看待。简而言之,厥后我取舍用此刻风行的框架去开辟企业应用,至少后续项目组进驻后,学习开发成本皆比力低,也简单找到响应的开发人员。

  给腾讯的一个发起

  那两周上去,对企业微信的官方文档可以道是恨入骨髓!太渣了!每一个接口皆是简略的不克不及再简略的解释,不例子,不源码,更别说视频教程了,端赖本人探索,铺张了我太多的工夫。若是腾讯的文档写得美满一些,能够我花的那两周工夫可以缩短为两天。特别是不例程这个事,莫非腾讯没有晓得“Talk is cheap show me the code.”吗?

  好比wx.agentConfig必需写正在wx.config的ready方式中,这么紧张的信息文档中居然不写,害我正在开放社区中查了半天才明确;又好比可托域名是可以经由过程正在hosts中手工模拟的,这么紧张的技能也不任何处所说起。这要铺张几没有晓得这个技能的程序员几工夫啊!

  比照Vue的官方文档,解释、例程、视频教程一应俱全,无比知心,学习本钱简直为整。我念那对Vue的风行也起到了至关重要的作用。如果说Vue是个温男,那么企业微信的文档就是一个不折不扣的渣男!

  正在腾讯的开放社区中,有管理员当真的回覆各人的发问,那一点十分好,但财大气粗的腾讯若是能把文档写得更美满一些,也不消请那么多专职管理员来回覆漫山遍野的问题了。

  我为何看好企业微信

  中国人讲求中庸,办事讲求均衡,由于一个好的平衡点总能给咱们带来最大的效能,那一点正在开辟平台上也没有破例:JavaEE是一个开放平台,Lotus Notes是一个绝对封锁的平台,而企业微信介于两者之间。我举一个栗子去简略解释三者的区别:

  好比上传照片这件事,Java是不任何限定的,您可以取舍任何交互方式、任何处置惩罚形式让用户上传照片,用户的体验可以千差万别,但价值是您本人要费心每一个细节,调节一切波及的参数,普通实现这个小功用须要程序员忙活几个小时;Lotus Notes恰恰相反,只有一种上传的方法,可调节的参数很少,但程序员只须要写一行代码,分分钟搞定;企业微信则供给了一个近似Lotus Notes的调用函数,交互方式根本流动,但后盾的处置惩罚您可以取舍您熟习的方法,好比Java。这类折中虽然限定了用户体验(同等的体验也没有必然欠好),但大大晋升了效能,个人感觉是比力适合的平衡点。

  咱们再从技巧层面看看企业微信这类“中庸特质”。

  一方面,企业微信 “封装”了良多“才能”,只有简略的几行代码便能“推起”这些“才能”。好比“扫一扫“、获得地理位置、操纵蓝牙等等;但另一方面,您取得这类才能的条件是必需严格遵守腾讯的范例,而且操纵情势皆是“腾讯式”的。

  又好比,一方面您可以取舍良多喜好的技巧框架,前台可以用Vue,也可以用React,后盾可以用Java,也可以用Python;但另一方面,您必需严厉装置腾讯要求的方法,先实现config的企业权限注入,再实现agentConfig的使用权限注入,才气享用您愿望取得的那些“才能”。

  综上,我的感到就是:Java太开放,须要费心的事太多;Notes太封锁,受限太多;而企业微信找到了一个很好的平衡点,咱们经由过程支付一点自由的价值,取得了才能的加持跟平台的撑持,更不用说与微信的互联互通所带来的的代价了。以是,正在企业应用领域,算是一个中国人的中庸取舍吧。

(微信群二维码推广平台)。 (哪有pc可靠微信公众号平台)。 (哪里找靠谱的极速赛车微信公众号)。 (找免费人多的微信群二维码)。 (极速赛车实力微信群号多少推荐)。 (微信群二维码分享平台)。

13297045169

联系我们