W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
調(diào)用云函數(shù) qq.cloud.callFunction 方法的定義如下:
Cloud.callFunction(object: Object): Promise<Object>
屬性 | 類型 | 默認值 | 必填 | 說明 |
---|---|---|---|---|
name | string | 是 | 云函數(shù)名 | |
data | Object | 否 | 傳遞給云函數(shù)的參數(shù),在云函數(shù)中可通過 event 參數(shù)獲取 | |
config | Object | 否 | 配置 |
屬性 | 類型 | 默認值 | 必填 | 說明 |
---|---|---|---|---|
env | string | 是 | 環(huán)境 ID,填寫后將忽略 init 時指定的環(huán)境 ID |
屬性 | 類型 | 說明 |
---|---|---|
result | any | 云函數(shù)返回的結(jié)果 |
requestID | string | 云函數(shù)執(zhí)行 ID,可用于日志查詢 |
data 參數(shù)說明 在 data 中如果傳入了 Buffer 類型的數(shù)據(jù),數(shù)據(jù)在 JSON 序列化的過程中會被轉(zhuǎn)成 {},以小程序端調(diào)用為例:
// 小程序端調(diào)用
qq.cloud.callFunction({
// ...
data: {
buf: ArrayBuffer // 此處填入了某種方式獲取得到的 Buffer 數(shù)據(jù),可以是 request 下來的,可以是讀文件讀出來的等等
},
})
// 云函數(shù)端收到的 event 參數(shù)的結(jié)構(gòu):
{
"buf": {},
}
這里應(yīng)當(dāng)避免傳入 Buffer 類型的數(shù)據(jù),因為直接傳輸buffer數(shù)組JSON串會讓數(shù)據(jù)體積增大,增加傳輸耗時,如果需要傳遞 Buffer,有兩種替代的建議方式:
示例代碼 假設(shè)已有一個云函數(shù) add:
exports.main = (event, context, cb) => {
return event.x + event.y
}
在小程序端發(fā)起對云函數(shù) add 的調(diào)用:
qq.cloud.callFunction({
// 要調(diào)用的云函數(shù)名稱
name: 'add',
// 傳遞給云函數(shù)的event參數(shù)
data: {
x: 1,
y: 2,
}
}).then(res => {
// output: res.result === 3
}).catch(err => {
// handle error
})
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: