unicloud2-云函数及调用

302 阅读1分钟

云函数

右键点击unicloud文件夹,点打开unicloud web控制台可以打开云函数空间

在空间中,最下面有一个成员管理,可以加人进来多人开发

在uniapp的官网,找到unicloud,基本概念,有云函数和数据库的基本介绍

image.png

云函数是用来在云端操作数据库的,以后通过unicloud创建接口,学完云函数还会学云对象

普通云函数

之前请求网络数据是用uni.request连接接口,现在是用uniCloud.callFunction调用云函数

创建云函数

点击项目中unicloud下的云函数,右键cloudfunction创建云函数

image.png

创建完成后,在common同级目录下,有这个云函数了,下面有两个文件 image.png

所有请求数据库的方法,都是在这里面,package.json是用于配置各种依赖的

async:关于同步异步请求博主有视频介绍

www.bilibili.com/video/BV1XW…

'use strict';
exports.main = async (event, context) => {
	//event为客户端上传的参数
	console.log('event : ', event)
	
	//返回数据给客户端
	return event
};

在云函数中直接返回一个字符串测试

'use strict';
exports.main = async (event, context) => {
	//event为客户端上传的参数
	// console.log('event : ', event)
	
	//返回数据给客户端
	return "uniapp 接口学习"
};

在项目中,调用这个方法,测试能不能成功,在index.vue中请求这个接口,编译项目会显示服务空间不存在,右键自定义的云函数,点击上传部署

image.png

报错 image.png

第二天重新打开编辑器什么问题都没了,项目首页代码 index.vue

<template>
	<view class="content">
		<image class="logo" src="/static/logo.png"></image>
		<view class="text-area">
			<text class="title">{{title}}</text>
		</view>
	</view>
</template>

<script>
	export default {
		data() {
			return {
				title: 'Hello'
			}
		},
		onLoad() {
      uniCloud.callFunction({
        // name是自定义的云函数名,data是传的参数
        name:"myCloudFun"
      }).then(res=>{
        console.log(res);
      })
		},
		methods: {
		}
	}
</script>

<style>

</style>

云函数返回的自带符在控制台被打印出来了,他是一个对象包裹的字符串 image.png