网友真实露脸自拍10p,成人国产精品秘?久久久按摩,国产精品久久久久久无码不卡,成人免费区一区二区三区

小程序模板網

小程序·云開發初級FAQ

發布時間:2018-10-30 14:30 所屬欄目:小程序開發教程

之前參加過小程序·云開發相關的分享, 在團隊內進行了推廣, 感覺官方的宣傳不夠直接, 還是太玄乎了, 這是收集了貓眼娛樂前端工程師的問題, 和相關答疑, 部分問題是和小程序·云開發的同學溝通過的結論

主要面向初級前端工程師, 快速了解云開發是怎么回事, 不涉及復雜代碼

  • 有小程序開發經驗
  • 理解 server 端基礎, 并有少量node.js server端經驗

1. 小程序云開發是什么?

官方文檔, 不用著急點, 下面FAQ未提及的可以進來看

主要提供兩種能力

1.1 提供持久存儲

持久存儲是指刪除微信或更換手機后, 用戶重新打開我們的小程序, 仍舊能讓用戶看到自己的信息

主要通過兩種存儲容器

  1. 類mangodb的 數據庫存儲 , 比如用戶提交的文章
  2. 文件存儲 , 比如用戶上傳的照片

1.2 提供簡化的server端編程環境

云函數

簡單解釋: 在小程序端寫上函數名 + 參數, 就能調用遠端的一個函數

為什么不直接寫到小程序端, 而要繞彎子要這樣? 最常見的原因是:

  1. 有些業務邏輯涉及 保密信息 , 不能寫在小程序上, 比如: 價格計算, 交易流程
  2. 有些操作需要 更高的權限 , 比如: 管理員可以刪除所有用戶的數據.
  3. 橋接到第三方接口, 小程序https接口域名數量超限, 或者第三方接口不是https接口.

2. 直接操作數據庫會不會有安全問題

云開發的數據庫和傳統數據庫有些區別, 他會自動給每個數據表增加一個 創建人字段 + 表權限設置 , 后續的操作都會基于這些約束, 一般的策略是

  1. 每個用戶只能修改自己創建的信息, 比如自己發的文章
  2. 每個用戶只能讀取其他用戶的信息, 但不能修改, 比如其他人發的文章
  3. 每個用戶只能讀取公共信息, 但不能修改, 比如公告信息, 一般會允許通過管理端修改

3. 直接操作文件存儲會不會有安全風險

類似上一個數據庫的權限, 通過 文件創建人 + 文件夾權限設置

文件的操作使用服務端生成的唯一ID, 不會被窮舉

4. 別人會不會調用我的云函數

不會, 云函數的網絡協議是私有的, 并且有加上數字簽名驗證

這套機制是在微信app內部實現的, 除非微信這套機制被攻破

5.云函數是用js寫么, 運行環境是什么?

是js, 運行環境是nodejs 8.9, 支持async await關鍵字

目前還不支持修改運行環境, 未來應該會支持自選環境

6. 使用了云開發, 是不是就不能使用自己的服務端了

不是, 兩個可以并存, 就當是看起來不一樣的異步調用就好

// 云開發相關api
wx.cloud.xxxx()

// 自有服務
wx.request()
復制代碼

由于是nodejs的運行環境, 所以云函數可以使用http tcp模塊, 這樣就能通過云函數轉發請求到任意域名, 不受小程序端的請求域名限制

7. 典型的云函數是什么樣的?

// 小程序端, 調用
wx.cloud.callFunction({
    name: 'foo',
    data: { a: 1, b: 2 },
    success: function(res) {
        console.log(res.result)
    }
)

// 云函數, 聲明
// cloudfunctionRoot/functions/foo/index.js
exports.main = async function(e, ctx) {
    return e.a + e.b
}
復制代碼

函數名和目錄名對應, 根路徑在project.config.json中定義, 詳細參考官方文檔中的"我的第一個云函數"

8. 云函數還有什么特殊能力?

直接獲取用戶的openId

// index.js
exports.main = (event, context) => {
  return event.userInfo
}
復制代碼

如要獲取用戶頭像 昵稱等信息, 還是需要在小程序端進行授權才行

9. 云函數需要我們考慮服務器運維的工作么

不需要, 只要開發好上傳就行, 運行環境是獨立 封閉的, 類 CentOS 7 的環境

10. 開發時和線上環境有隔離么

提供1個生產環境, 和1個開發環境, 存儲和云函數都是獨立的

這意味著多個開發者并行開發協作可能會有些小麻煩, 同時只能有一套代碼在開發環境, 這就只能通過一些工作流程約定, 比如收斂上傳權限, 每日自動部署. 應用類似git-flow的分支策略

11. 云開發是否提供有定位 地理信息 支付相關業務的支持

暫時沒有, 這方面的需求還是很強的, 畢竟小程序是提倡線下掃碼, 掃碼后還是期望能夠獲取到附近的相關信息, 簡單的比如城市 區劃, 詳細的比如商家

小程序云開發的同學目前還在收集這方面的需求

12. 什么版本的基礎庫支持云開發

基礎庫 2.2.3 之后開始支持, 但對于舊版本可以加個配置也能支持

app.json/game.json

{
  "cloud": true
}
復制代碼

13. 費用呢

目前免費, 正在調研計費策略, 可能是按照調用量, 存儲量計費


易優小程序(企業版)+靈活api+前后代碼開源 碼云倉庫:starfork
本文地址:http://www.xiuhaier.com/wxmini/doc/course/24920.html 復制鏈接 如需定制請聯系易優客服咨詢:800182392 點擊咨詢
QQ在線咨詢
AI智能客服 ×