欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

uni-app使用微信小程序云函數(shù)的步驟示例

 更新時間:2020年05月22日 11:24:27   作者:愛河h  
這篇文章主要介紹了uni-app使用微信小程序云函數(shù)的步驟示例,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧

創(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" : {
    /* 小程序特有相關(guān) */
    "appid" : "wxd7de467f6e6cf741",
    "cloudfunctionRoot": "./functions/", // 這一行就是標(biāo)記云函數(shù)目錄的字段
    "setting" : {
      "urlCheck" : false
    },
    "usingComponents" : true
  }

編寫vue.config.js

  • 我們在項目根目錄創(chuàng)建vue.config.js文件
  • 寫入以下內(nèi)容(如路徑不一樣請做相應(yīng)適配)
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ā)者工具的自動復(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)建出對應(yīng)的云函數(shù)。創(chuàng)建成功后,工具會提示是否立即本地安裝依賴,確定后工具會自動安裝 wx-server-sdk。我們會看到以下內(nèi)容。

創(chuàng)建好后將其同步復(fù)制到uni-app項目,即可為以后自動同步行方便,又可避免在輸出文件夾中云函數(shù)的意外丟失。至此,相關(guān)文件編寫工作轉(zhuǎn)至Hbuilder X,云函數(shù)上傳部署依舊在微信開發(fā)者工具。

編寫云函數(shù)

默認的云函數(shù)只是一個返回用戶基本數(shù)據(jù)的內(nèi)容,我們將其修改至滿足我們的業(yè)務(wù)需求,以內(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)限,請先開通云服務(wù)

這是因為 小程序開發(fā)選擇了云服務(wù)開發(fā),但是沒有開通云服務(wù)導(dǎo)致,點擊微信開發(fā)工具上方的 云開發(fā)按鈕,開通云開發(fā)。

新建云函數(shù)(上床并部署后會自動出現(xiàn))

到此這篇關(guān)于uni-app使用微信小程序云函數(shù)的步驟示例的文章就介紹到這了,更多相關(guān)uni-app使用微信小程序云函數(shù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 微信小程序8種數(shù)據(jù)通信的方式小結(jié)

    微信小程序8種數(shù)據(jù)通信的方式小結(jié)

    這篇文章主要介紹了微信小程序8種數(shù)據(jù)通信的方式小結(jié),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02
  • Node.js模擬瀏覽器文件上傳示例

    Node.js模擬瀏覽器文件上傳示例

    這篇文章主要介紹了Node.js模擬瀏覽器文件上傳的實現(xiàn)代碼,需要的朋友可以參考下
    2014-03-03
  • 利用Javascript裁剪圖片并存儲的簡單實現(xiàn)

    利用Javascript裁剪圖片并存儲的簡單實現(xiàn)

    裁剪圖片對我們來說是再熟悉不過的了,最近工作中就又遇到了這個需求,所以想著干脆整理下來,方法大家和自己在需要的時候參考學(xué)習(xí),所以這篇文章主要介紹了利用Javascript裁剪圖片并存儲的簡單實現(xiàn),后端PHP處理我用的是THINKPHP框架,需要的朋友可以參考下。
    2017-03-03
  • 微信小程序?qū)崿F(xiàn)的點擊按鈕 彈出底部上拉菜單功能示例

    微信小程序?qū)崿F(xiàn)的點擊按鈕 彈出底部上拉菜單功能示例

    這篇文章主要介紹了微信小程序?qū)崿F(xiàn)的點擊按鈕 彈出底部上拉菜單功能,結(jié)合實例形式分析了action-sheet組件及事件響應(yīng)簡單使用技巧,需要的朋友可以參考下
    2018-12-12
  • D3.js實現(xiàn)文本的換行詳解

    D3.js實現(xiàn)文本的換行詳解

    相信大家都知道在SVG中添加文本是使用text元素。但這個元素不能夠自動換行,超出的部分就顯示不出來了,怎么辦呢?下面通過這篇文章來給大家詳細介紹下實現(xiàn)的過程。
    2016-10-10
  • JS cookie中文亂碼解決方法

    JS cookie中文亂碼解決方法

    本篇文章主要是對JS中的cookie中文亂碼解決方法進行了介紹,需要的朋友可以過來參考下,希望對大家有所幫助
    2014-01-01
  • 整理關(guān)于Bootstrap模態(tài)彈出框的慕課筆記

    整理關(guān)于Bootstrap模態(tài)彈出框的慕課筆記

    這篇文章主要為大家整理了關(guān)于Bootstrap模態(tài)彈出框的慕課筆記,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • JavaScript Math.round() 方法

    JavaScript Math.round() 方法

    math.round()方法將對參數(shù)進行四舍五入操作,對js math.round相關(guān)知識感興趣的朋友一起學(xué)習(xí)吧
    2015-12-12
  • BootStrap Datepicker 插件修改為默認中文的實現(xiàn)方法

    BootStrap Datepicker 插件修改為默認中文的實現(xiàn)方法

    bootstrap-datepicker 是一個非常優(yōu)秀的時間選擇插件,默認是英文顯示日期的,通過下面幾個小修改讓其支持默認中文。下面通過本文給大家介紹BootStrap Datepicker 插件修改為默認中文的實現(xiàn)方法,一起看看吧
    2017-02-02
  • 解決javascript 全局變量失效的問題

    解決javascript 全局變量失效的問題

    這篇文章主要介紹了解決javascript 全局變量失效的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2016-04-04

最新評論