我用的是测试号,为什么上传临时图片时出现这个问题:

来源:

Mayi007

2016-11-22

{ type: 'image', mediaId: undefined }


var data=yield(wechatApi.uploadMaterial('image',__dirname+'/pic.jpg'));

reply={

type:'image',

mediaId:data.media_id

}

console.log(reply);


写回答

4回答

Scott

2016-11-23

在上传之前,把 request 里传的参数打印出来,看看这个值是不是为空

0
0

Scott

2016-11-22

这种写法好怪啊


var data=yield(wechatApi.uploadMaterial('image',__dirname+'/pic.jpg'));


去掉括号好了


var data=yield wechatApi.uploadMaterial('image',__dirname+'/pic.jpg');


另外,把路径用 path join 链接起来:


path.join(__dirname, '/pic.jpg')


根据 api unauthorized hint,怀疑是 accessToken 是不是过期失效或者未传成功,如果是测试号,权限应该都有的

0
1
Mayi007
老师那该怎么调试是不是accessToken 的问题呢?
2016-11-22
共1条回复

Mayi007

提问者

2016-11-22

我怀疑是access token的原因,还怎么调试这个呢?

0
0

Mayi007

提问者

2016-11-22

我也console.log(data)了,但还是出现这个权限问题:

{ errcode: 48001,

  errmsg: 'api unauthorized hint: [4srzqa0857rsz6!]' }

我用的是测试号,不是都有这些接口权限的吗?


0
0

7天搞定Node.js微信公众号

Koa框架、ES2015新特性、MongoDB,开发微信公众号

1742 学习 · 787 问题

查看课程