Nodejs微信开发,视频上传成功,但是不返回给用户

发布于 2022-09-05 15:00:42 字数 807 浏览 20 评论 0

用nodejs进行微信开发
上传的是临时素材
对视频的回复机制如下:

if(content === '视频'){
        var data = yield wechatApi.uploadMaterial('video',__dirname+'\\public\\video\\3.mp4')
        console.log('data')
        console.log(data)
        reply = {
            type:'video',
            title:'回复的视频',
            description:'视频描述',
            mediaId:data.media_id
        }
    }

在手机微信客户端输入“视频”后,
后台的显示如下:
图片描述

出现这样的代码,应该就是上传成功了吧?但是,手机上显示的是该公众号暂时无法提供服务,请稍后再试?这是为什么?
ps:又发现上传的时候,上传了三次?只发了一个"视频",怎么会上传三次?

至于上传的接口是这样的:
var wechatApi = new Wechat(config.wechat)
这个就是对上面的实例化,具体实例化需要的数据从config里面获取。
在上传的时候,使用wechatApi.uploadMaterial()这个方法来实现。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

柠檬色的秋千 2022-09-12 15:00:42
  • 这个问题在我开发的时候也遇到了,当用户发送“视频”两个字后,后台确实是在上传视频素材(上传的代码写得没有问题),但是视频上传的时间由于网络或者微信后台本身的原因有时会超过5秒(大一点的视频在测试账号都超5秒),这时服务器就直接返回提示信息:该公众号暂时无法提供服务。需要过一会儿,程序才打印出你截图的data和xml的信息。

  • 所以自动回复的时候上传视频素材这种做法是不合适的,视频应该事先先上传好,用户发送"视频",直接获取事先上传好的视频信息,并回复用户

硪扪都還晓 2022-09-12 15:00:42

1.为什么微信为什么返回公众号暂时无法提供服务
微信的机制是 用户发送给公众号信息后,服务器5秒内没有返回则提示该公众号暂时无法提供服务

5秒的机制是可以用别的方式解决的, 先返回给微信空内容为了不提示, 等程序处理完再给微信返回一个正确的
响应内容

2.上传三次的问题需要你贴上传接口的代码和上传处理的代码,然后我们在说怎么解决

给我一枪 2022-09-12 15:00:42

我也是遇到这个问题,请问你解决了这个问题没有,上传临时素材的所有都不行,都是控制台有打印,但是微信这个号提示无法提供服务

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文