提交 67280605 编写于 作者: 雪洛's avatar 雪洛

docs: uniCloud api doc

上级 0f591514
......@@ -13,10 +13,12 @@
* [云函数URL化](uniCloud/http.md)
* [云数据库](uniCloud/cf-database.md)
* [云存储](uniCloud/storage.md)
* [开放接口](uniCloud/openapi.md)
* 扩展能力
* [uni-id](uniCloud/uni-id.md)
* [uni-account](uniCloud/uni-account.md)
* [unipay](uniCloud/unipay.md)
* [发送短信](uniCloud/send-sms.md)
* [前端网页托管](uniCloud/hosting.md)
* [腾讯云自定义登录](uniCloud/authentication.md)
* [日志输出](uniCloud/cf-logger.md)
......
......@@ -67,20 +67,64 @@ exports.main = async (event, context) => {
## 运行和调试云函数@rundebug
编写云函数后,在项目管理器里右键点击该云函数的目录,在弹出菜单中可选择“上传部署云函数”、“上传并运行测试云函数”。如下图所示:
编写云函数后,在项目管理器里右键点击该云函数的目录,在弹出菜单中可选择“上传部署云函数”、“上传并运行测试云函数”。前者仅完成部署,后者会在部署后同时运行,并打印日志出来。自2.8.1版本起HBuilderX支持云函数本地运行。如下图所示:
前者仅完成部署,后者会在部署后同时运行,并打印日志出来。
![](https://img.cdn.aliyun.dcloud.net.cn/uni-app/uniCloud/uniCloud-run-function.png)
在云函数对应的目录右键可以配置运行测试参数,如下图,选择之后会生成一个形如`${函数名}.param.json`的文件,此文件内容会在云函数`上传并运行`时作为参数传入云函数内。
在云函数对应的目录右键可以配置运行测试参数,如下图,选择之后会生成一个形如`${函数名}.param.json`的文件,此文件内容会在云函数`上传并运行`时作为参数传入云函数内。详细用法可参考:[配置运行测试参数](https://uniapp.dcloud.net.cn/uniCloud/quickstart?id=runparam)
在云函数编辑器里,按`Ctrl+r`运行快捷键,或点工具栏的运行,还会直接看到上传并运行云函数的快捷指令。`Ctrl+r`然后回车或选`0`,即可高效的在控制台看到运行结果和日志输出。
云函数目前无法断点debug,只能打印`console.log`看日志。
![](https://img.cdn.aliyun.dcloud.net.cn/uni-app/uniCloud/uniCloud-run-function.png)
![](https://img.cdn.aliyun.dcloud.net.cn/uni-app/uniCloud/uniCloud-run-function-2.png)
## 本地运行云函数@runlocal
自2.8.1版本起HBuilderX支持云函数本地运行,调试云函数更加方便快捷。此外还可以方便批量导入数据及文件,不再受云函数超时限制(云函数上传文件到云存储只有腾讯云支持)。
**目前只支持本地运行,本地调试还在开发中**
#### 使用方式
在要本地运行的云函数上右键选择本地运行
- 如果没有安装本地运行插件,按照提示安装即可
- 如需配置运行参数请参考[配置运行测试参数](https://uniapp.dcloud.net.cn/uniCloud/quickstart?id=runparam)
![](https://img.cdn.aliyun.dcloud.net.cn/uni-app/uniCloud/uniCloud-local-1.jpg)
#### 注意事项
**时区问题**
云函数内使用的时区是utc+0,本地运行时使用的是本机时间。在使用时间戳时两者没有差异,但如果要获取年、月、日、小时要注意时区的差异。
以下方式可以获取指定时区的年、月、日、小时,可以参考一下
```js
// 获取偏移后的Date对象,例如utc+x时offset就传x
function getOffsetDate (offset) {
return new Date(
Date.now() + (new Date().getTimezoneOffset() + (offset || 0) * 60) * 60000
)
}
// 获取utc+8的小时数
const hour = getOffsetDate(8).getHours()
// 获取时间戳无需使用此方式utc+0时间戳是与utc+8时间戳一致的
```
**数据与存储**
请务必注意云函数在本地运行时依然是连接的云端数据库与存储
**Nodejs版本**
服务空间所使用的nodejs版本为8.9,本地运行时使用的本地nodejs可能与服务空间的nodejs版本并不一致,在本地测试之后部署到云端也务必测试一下兼容性。
## 运行云函数时配置运行测试参数@runparam
在云函数的上传运行菜单或右键菜单中,有`配置运行测试参数`的功能。
......
## 发送短信
接口形式:`uniCloud.sendSms`
发送短信功能需要去DCloud开发者中心开通,详情参考[使用短信服务](https://ask.dcloud.net.cn/article/37534)
......@@ -43,21 +41,21 @@
**调用示例**
```js
'use strict';
exports.main = async (event, context) => {
const res = await uniCloud.sendSms({
smsKey: '****************',
smsSecret: '****************',
templateId: 'uniID_code',
phone: '188********',
data: {
name: 'DCloud',
code: '123456',
action: '注册',
expMinute: '3',
}
})
return res
'use strict';
exports.main = async (event, context) => {
const res = await uniCloud.sendSms({
smsKey: '****************',
smsSecret: '****************',
templateId: 'uniID_code',
phone: '188********',
data: {
name: 'DCloud',
code: '123456',
action: '注册',
expMinute: '3',
}
})
return res
};
```
......
......@@ -2,7 +2,7 @@
`uni-account`是一个适用于微信小程序和支付宝小程序的平台账户登录的云函数模板。`uni-account`内部对不同平台的 api 进行了拉齐,有助于开发者更方便的调用相关功能。
**后续uni-account会整合到uni-id内**
**uni-account功能已整合到uni-id内,推荐使用uni-id**
## 引入 uni-account
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册