Unicloud云函数实现HTTP上传文件

打印 上一主题 下一主题

主题 505|帖子 505|积分 1515

登陆Unicloud后台 uniCloud控制台
购买阿里云服务空间(腾讯云也支持)
实现的功能如下,支持外链直接下载:



 开始操作:
安装 HBuilder (略)
文件-新建-项目-uni-app,按图上设置创建


在 uniCloud上面右键,关联云服务空间或项目,关联你的 阿里云服务空间
 

 
在cloudfunctions上面右键,新建云函数/云对象

 
 选择云函数,默认模板即可,此时假如需要安装扩展或模块会有提示,按提示操作即可

 然后进入云函数目录 index.js 编写代码  
云函数官方文档 概述 | uni-app官网

 

 示例代码:
  1. 'use strict';
  2. exports.main = async (event,context) => {
  3.                 //unicloud的上传文件的云函数
  4.         let result = await uniCloud.uploadFile({
  5.                 //保存到云端的文件名
  6.                             cloudPath: Date.now() + ".jpg",
  7.                                 //base64转buffer(阿里云支持buffer和绝对路径)
  8.                 //event为请求传入的base64数据(不包含文件类型标识)
  9.                                 fileContent: Buffer.from(event.body,'base64'),
  10.                                 success(res){
  11.                     //阿里云直接返回文件ID就是下载地址
  12.                                         return result.fileID
  13.                                 },
  14.                                 fail(err) {
  15.                                         reject(new Error(err.errMsg))
  16.                                 }
  17.                         });
  18.                        
  19.         return result;//返回上传文件云函数的返回值
  20.        
  21.         let fileID = result.fileID; //result为json,直接取值
  22.                                 //unicloud的获取文件信息的云函数(此API仅支持阿里云)
  23.         let urlResult = await uniCloud.getFileInfo({
  24.                 fileList: [fileID]
  25.         });
  26.         return{
  27.                 urlResult,
  28.                 fileID
  29.         }
  30. };
复制代码
 代码编写完成后,在你的云函数目录上面右键,上传部署

 

上传完成后,在后台云函数位置可以看到你上传的云函数,点击详情可以配置外网url,我们就是通过请求这个url实现上传文件的 

 点击云函数URL化下面的编辑按钮。在默认域名背面加上你指定的path,注意以 “/”开头

 生存完毕后, 我们就可以通过请求这个URL并传入对应参数上传文件到阿里云了

 
打开图片链接和后台均已成功


 这样我们就搭建好了一个支持API的浅易文件上传体系。其他API不再赘述。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

万万哇

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表