- 云函数上怎么获取临时CDN链接的文件流?
在小程序端用 wx.cloud.CDN 来传文件到云函数上了。 wx.cloud.callFunction({ name: 'test', data: { img: wx.cloud.CDN({ type: 'filePath', filePath: tempFilePath }) } }).then(res => { console.log(res) }) .catch(err => { console.error(res) }) 云函数上也获取了临时 CDN 链接,不过没法获取此文件流。用 axios 报错 400 错误。 let a = await axios({ url: event.img }) console.log(a) [图片] 这个该怎么解决?
2021-01-09 - 腾讯的一小步,开发者的一大步:说一说Cloud.CDN
最近在文档中偶然发现了这么一段,测试完之后,居然情不自禁的想要夸一下腾讯: [图片] 故事是这样的: 很久之前,我们小程序上有图片上传前做安全检测的需求,选择的是云函数的实现方案,图片压缩后直接以Buffer的形式传递。刚上线的几个月,一切运行正常,可是突然某一天(几个月前)开始,陆续有用户反馈上传会失败,当然也不是100%失败,个别幸运儿还是可以成功的。排查发现,是小程序在调用云函数的时候报错了(为了写文章,异常都是最新截图的), 第一种形式的异常(安卓):errCode: -404012 polling exceed max timeout retry. 说“ 超过了超时重试的最大次数”,如果真的以为是暂时的网络不好或者云函数那边临时出了什么状况,等待你的将是现实的沉痛一击,因为它从此再也没有好过: [图片] 第二种形式的异常(iOS):errCode: -1 | errMsg: cloud.callFunction:fail Error: data exceed max size. 说“数据超限了”,意思是嫌弃传的图片太大了,恐怕这也是导致安卓上报超时的原因: [图片] 以前都是好的,突然从某一天开始就不行了,后来,终于在等待中明白,应该是腾讯收紧了cloud.callFunction的数据大小限制,再也没有放宽... 由于这个功能比较次要,用得也少,就一直没改,直到最近才腾出手来。本来已经决定要采取图片先临时传到COS,再把COS URL传给云函数的方案了,但是在做之前想搞明白callFunction的数据大小限制上限到底是多少,居然几十K的图片都传不了,以前的文档是啥也没写的,但出于习惯,我又翻了下文档,于是看到了那段让人惊喜的文字,它的意思是,我们准备要做的这个功能,腾讯用"wx.cloud.CDN"已经提供了!!! 跳到对应的文档链接,说是从2.12.0也就是最新版的基础库开始支持,虽然2.12.0现在占比只有60%多,但会一天天增加。 [图片]https://developers.weixin.qq.com/miniprogram/dev/wxcloud/reference-sdk-api/utils/Cloud.CDN.html 那就来看看它的效果如何吧,调用超级简单: [图片] 调用结果如下,图片会先传到CDN,然后再拿返回的临时图片URL传给cloud.callFunction: [图片] [图片] 完美!callFunction的传输上限我已经不再关心了~
2020-07-19 - 云函数开发跳坑经验-报错404011 cloud function execution error
这里写一下这两天踩过的坑,若有大神看此贴,欢迎指点一二,若有写的不周的地方,请谅解 前言:小程序需要在云函数中执行对数据库的新建以及更新操作 我这里用的云函数操作的云数据库,刚开始写的是一个新建的动作,复杂的逻辑劈里啪啦写了一大堆,测试一下并没有报错,但是在我进入云开发去看数据库时傻眼了---并没有刚刚新建的记录。赶紧先把代码挪出来只写一个简简单单的新建函数: 注意一: 云函数开发和普通开发有些区别--普通开发访问数据库这么写:const db = wx.cloud.database() 云函数访问数据库这么写:const db = cloud.database() 注意二:对数据库的操作代码之前要加上 “await” (这里我要吐槽一下官方文档,没有有关于云函数操作数据库的注意事项文档) [图片] 嗯,这样才算能够操作的到数据库 注意三:云函数初始化的时候,千万不要图省事什么都不写: 开始的时候,我以为这么写会去访问默认数据库不需要其他操作 [图片] 那么你可能会和我一样遇到-404011错误 [图片] 原来云函数在初始化的时候,并不会按照app.js中wx.cloud.init里面配置的信息进行位置访问,而是需要在云函数的初始化方法中声明访问位置 [图片] 这个报错影响了我一天,这里也需要提醒一下遇到-404011的各位,遇到这样的问题继续看报错信息不要莽莽撞撞的就去查各种资料,比如我的这个报错信息,提示找不到db or table 所以才意识到初始化的时候需要声明一下,之后再上传并部署就可以了 也许您也还会遇到-404011的其他报错信息,报错信息后面如果提示找不到sdk或者其他的也都有可能,在查百度的时候看到这样一篇文章不错,可以借鉴一下https://blog.csdn.net/New_Yao/article/details/84657774 我的电脑上是没有装node的,但是也可以正常使用,我一直使用的都是云端安装依赖,因为我在看官方文档的时候,并没有说电脑一定要安装node,当然,这个还是要看实际情况
2019-05-14 - 小程序前端开发实战
4.1学习对象+课程目的+推荐工具+学习方法 [视频] 4.2微信小程序平台介绍 [视频] 4.3微信开发者工具介绍 [视频] 4.4微信小程序代码框架介绍 [视频] 4.5微信小程序代码wxml学习 [视频] 4.6微信小程序代码wxss学习 [视频] 4.7微信小程序代码js学习 [视频] 4.8微信小程序js中的数据处理 [视频] 4.9微信小程序代码API介绍h [视频] 4.10微信小程序前端实现思路(1) [视频] 4.10微信小程序前端实现思路(2) [视频] 4.11手把手1:注册界面(1) [视频] 4.11手把手1:注册界面(2) [视频] 4.12自主实操1:登录界面 [视频] 4.13手把手2:发布新树洞界面 [视频] 4.14手把手3:树洞广场界面(1) [视频] 4.14手把手3:树洞广场界面(2) [视频] 4.14手把手3:树洞广场界面(3) [视频] 4.15自主实操2:我的树洞界面 [视频] 4.16课后小练 [视频] 4.17本章小结 [视频] 第四章结束后全部代码,点此领取。
2021-09-15