近来一直在做公司网站,从静态转向动态,想必注册登陆这等小事大家都很了然了,在此仅仅为了纪念下自己为了这个坑花了半天时间,头晕脑胀(谁说我实力不行?)
做手机验证码有很多第三方公司,看到阿里大于,还有云片,等等,因为用了阿里云的服务器,所以顺路用阿里大于,点进去发现改名了,叫做阿里云通信。网上查到的发送和验证部分很多都是基于阿里大于的,云通信这个只有官网的发送示例,来回纠结半天到底用旧版大于还是新版云通信。纠结省区一万字···
最后决定用新的,代码折腾一通,最后一运行,报错··· 找了半天发现,云通信不支持node7.6以下版本,自己用的4.xx,,哎好吧,下了个8.xx,运行,还是报错············
服了···说没有找到module debug,网上一搜,说是mongoose的问题(确实有mongoose错误提示),完了,越扯越远···试试大于吧
换了阿里大于,代码又是折腾一同,一运行··报错·····,错误信息对照阿里大于文档,是么有权限···,估计因为我用的key和secret都是云通信的(大于找不到key和secret了),哎,郁闷 了,这一下已经晚上6点多了,一个下午没了···
累到的我,静下来,心中祈祷了一会,想着再试试云通信,node4,5,6,7,8都试过了,结果还是不行,报错···并且各个版本报错不一样,估计是老版本不支持es6/7的语法,阿里云的示例用的es6/7。
最后,,,顺着报错信息打开了云通信api包的源码,突然发现,我晕,只见前面几行require的包正是报错的debug,还有roa,奇了怪了,难道是缺包??npm下载的包怎么会没有把dependency下全呢???果断手动下载了debug,roa,运行,,,OK,成功收到短信验证码
到此,真是想哭了,希望各位用云通信的麻油如果报错留心是不是dependency缺包···,npm这个玩笑开大了···
结论是:报错除了Google,还要多看源码,这里才是关键(容我吐一会···)。
(图片没有了,当时没想着要写出来·········我懒)