ali-sdk / node-dingtalk

node sdk for dingtalk

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

关于文档,使用有点疑问,不知道发哪里

koroshi opened this issue · comments

commented
//方法一
const deparment = dingtalk.client.getAccessToken();
console.log(deparment)
//方法二
let co = require('co');
co(dingtalk.client.getAccessToken()).then(function(a){
  console.log(a)
})

方法一无法打印(这是文档表现)
方法二是我看到里源码里得generator,试试看,因为我对co也不是特别熟悉只是知道
我想知道我得调用是方法一缺了什么步骤,还是就是方法二,或者更好得方法,
ps 我本地node 6.10.0

const department = yield dingtalk.client.getAccessToken();

建议先去学习下 es6 generatorco 的相关知识

commented

@atian25 感谢,不过我看了一下generator好像还是要借助co呀,不然内部那些拿不到得generator好像不会自己执行,而且yied不能出现在普通函数,能不能把useage里得例子改成用co得或者直接运行下来console.log()确实出来结果得,不然像我这样得新手就不知道如何使用了~。

总之感谢,我准备用co了

这是一个 egg 插件,在 egg 里面你一般都是在 generator 里面使用的。

commented

@atian25 原来如此- -我是npms.io里查到得看到ali-sdk开头就认为是官方库了- -,感谢

喔,我看错库了,这个是单独的。

这个也不算官方库了,不是钉钉同学维护的。

commented

@atian25 好吧,那我就线用着了😃

但文档中Usage那块确有问题漏了一个yield

还有另外一点就是钉钉文件上传(不是这个包的问题),貌似超多人遇到了“参数需要multipart类型”的问题,看了下源码,你们这个包的request封装是依赖urllib(看到有alsotang,urllib应该也是阿里的人写的),你们那边在做这个包的时候遇到过上述的那个问题没(如果遇到了,关键点在哪个地方)

我这边在用另外一个包request时,其form-data的提交应该是无法通过钉钉的校验的(出现“参数需要multipart类型”的错误),但在自己的mock服务以及微信的上传中是一点问题都没有的(吐槽钉钉在这块的后端实现),调试时忘记一直在走代理,代理那层没支持导致