這篇文章主要為大家展示了uni-app如何使用微信小程序云函數(shù),內(nèi)容簡而易懂,希望大家可以學習一下,學習完之后肯定會有收獲的,下面讓小編帶大家一起來看看吧。
創(chuàng)新互聯(lián)公司專注于企業(yè)營銷型網(wǎng)站、網(wǎng)站重做改版、依蘭網(wǎng)站定制設計、自適應品牌網(wǎng)站建設、H5建站、商城系統(tǒng)網(wǎng)站開發(fā)、集團公司官網(wǎng)建設、外貿(mào)營銷網(wǎng)站建設、高端網(wǎng)站制作、響應式網(wǎng)頁設計等建站業(yè)務,價格優(yōu)惠性價比高,為依蘭等各大城市提供網(wǎng)站開發(fā)制作服務。
創(chuàng)建云函數(shù)目錄
首先,我們需要在uni-app項目文件夾下,創(chuàng)建一個云函數(shù)目錄,路徑隨意,我這里是functions
。然后先隨便在里面放一些文件,這里以new_file.css
為例。(放文件的原因是:確保編譯成小程序后cloudfunctions文件夾存在。如果該文件夾下沒有文件,默認是不會在微信小程序開發(fā)平臺中顯示該文件夾的。)
修改manifest.json
在uni-app根目錄下,修改manifest.json
中的微信小程序項,結(jié)構(gòu)如下
"mp-weixin" : { /* 小程序特有相關 */ "appid" : "wxd7de467f6e6cf741", "cloudfunctionRoot": "./functions/", // 這一行就是標記云函數(shù)目錄的字段 "setting" : { "urlCheck" : false }, "usingComponents" : true }
編寫vue.config.js
const path = require('path') const CopyWebpackPlugin = require('copy-webpack-plugin') module.exports = { configureWebpack: { plugins: [ new CopyWebpackPlugin([ { from: path.join(__dirname, 'functions'), to: path.join(__dirname, 'unpackage/dist', process.env.NODE_ENV === 'production' ? 'build' : 'dev', process.env.UNI_PLATFORM, 'functions') } ]) ] } }
編譯運行
發(fā)現(xiàn)提示如下內(nèi)容
說明未安裝copy-webpack-plugin
插件,我們手動安裝一下。
然后編譯運行,發(fā)現(xiàn)微信開發(fā)者工具里面出現(xiàn)以下內(nèi)容。
截止目前,已打通Hbuilder X到微信開發(fā)者工具的自動復制,即已解決本文的核心內(nèi)容。以下為進一步測試。
創(chuàng)建云函數(shù)
(在微信開發(fā)者工具操作)我們在云函數(shù)根目錄上右鍵,在右鍵菜單中,可以選擇創(chuàng)建一個新的 Node.js 云函數(shù),我們將該云函數(shù)命名為check。開發(fā)者工具在本地創(chuàng)建出云函數(shù)目錄和入口 index.js 文件,同時在線上環(huán)境中創(chuàng)建出對應的云函數(shù)。創(chuàng)建成功后,工具會提示是否立即本地安裝依賴,確定后工具會自動安裝 wx-server-sdk。我們會看到以下內(nèi)容。
創(chuàng)建好后將其同步復制到uni-app項目,即可為以后自動同步行方便,又可避免在輸出文件夾中云函數(shù)的意外丟失。至此,相關文件編寫工作轉(zhuǎn)至Hbuilder X
,云函數(shù)上傳部署依舊在微信開發(fā)者工具。
編寫云函數(shù)
默認的云函數(shù)只是一個返回用戶基本數(shù)據(jù)的內(nèi)容,我們將其修改至滿足我們的業(yè)務需求,以內(nèi)容安全云調(diào)用為例。
在云函數(shù)文件中寫入以下內(nèi)容
// 云函數(shù)入口文件 const cloud = require('wx-server-sdk') cloud.init() // 云函數(shù)入口函數(shù) exports.main = async(event, context) => { try { console.log('待檢測文本:' + event.content); let result = await cloud.openapi.security.msgSecCheck({ content: event.content }) console.log('result:' + JSON.stringify(result)); if (result && result.errCode.toString() === '87014') { return { code: 300, msg: '內(nèi)容含有違法違規(guī)內(nèi)容', data: result } } else { return { code: 200, msg: 'ok', data: result } } } catch (err) { if (err.errCode.toString() === '87014') { return { code: 300, msg: '內(nèi)容含有違法違規(guī)內(nèi)容', data: err } } return { code: 400, msg: '調(diào)用security接口異常', data: err } } }
權(quán)限申明
在函數(shù)目錄下,創(chuàng)建一個config.json
,文檔說會自動創(chuàng)建,但是實際操作時可能不會自動創(chuàng)建。config.json
內(nèi)容如下。
{ "permissions": { "openapi": [ "security.msgSecCheck" //接口名 ] } }
小程序調(diào)用云函數(shù)
wx.cloud.init() //調(diào)用前需先調(diào)用init wx.cloud.callFunction({ name: 'check', data: { "content": this.contents.join() } }).then(res => { console.log(res.result) if (res.result.code == 300) { uni.showModal({ title: "溫馨提示", content: "你所輸入的內(nèi)容可能含有違法違規(guī)內(nèi)容,不支持進行下一步操作" }) return } else { ... // 你要進行的操作 } })
效果展示
如果第一次出現(xiàn)錯誤:invalid scope 沒有權(quán)限,請先開通云服務
這是因為 小程序開發(fā)選擇了云服務開發(fā),但是沒有開通云服務導致,點擊微信開發(fā)工具上方的 云開發(fā)按鈕,開通云開發(fā)。
新建云函數(shù)(上床并部署后會自動出現(xiàn))
以上就是關于uni-app如何使用微信小程序云函數(shù)的內(nèi)容,如果你們有學習到知識或者技能,可以把它分享出去讓更多的人看到。
網(wǎng)站標題:uni-app如何使用微信小程序云函數(shù)
本文地址:http://jinyejixie.com/article2/peosic.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設計、軟件開發(fā)、網(wǎng)站制作、全網(wǎng)營銷推廣、、網(wǎng)頁設計公司
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)