小プログラムから小プログラムクラウド開発まで


ダウンロードインストール不要の高速化、HTML 5よりも高速化、いつでも利用可能
1回の開発に適していないため、マルチエンドで互換性があり、各種携帯電話機の適配を免除した.
分かち合うことができて図文の分かち合うことを支持して、分かち合うことを支持して微信の友达とグループのチャットに
オリジナルappとほぼ同じ操作体験とスムーズさを実現
易取得支持扫码,微信搜索,朋友推荐
低敷居に公衆番号がある組織は迅速に登録することができ、迅速に店の小さなプログラムを生成することができる.
[外部チェーン画像の転送に失敗しました(img-MGADDZRv-15614409696961)](https://upload-images.jianshu.io/upload_images/11158618-b369eb9a799e7d21.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
小プログラム数が100万人を超える開発者
[外部チェーン画像の転送に失敗しました(img-L 0 L 3 uUqg-156614409696963)](https://upload-images.jianshu.io/upload_images/11158618-8cf64a2428e7f94e.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
ビューレイヤ:[外部チェーンピクチャの転送に失敗しました(img-xi 0 Idf 7 D-1566144096964)](https://upload-images.jianshu.io/upload_images/11158618-d71dc5e569495045.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
従来のビューとデータバインディング:[外部チェーンピクチャの転送に失敗しました(img-MQA 4 dXfm-156614409696964)](https://upload-images.jianshu.io/upload_images/11158618-6626780f253c403a.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
[外部リンク画像の転送失敗(img-wwyH 2 Q 2 i-1566144096965)](https://upload-images.jianshu.io/upload_images/11158618-ccdc0eeb46d78383.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
アプレットバックグラウンド開発
ウィジェットクラウド開発は微信チームです
ウィジェットコンソールに統合されたオリジナルserverlessクラウドサービスコア機能には、クラウドストレージ、クラウドデータベース、クラウド関数が含まれます.
コード実行データ記憶能力ファイル記憶能力
能力:クラウド関数:クラウドで実行されるコード、微信は天然認証を私発し、開発者は自分の業務論理コードを書くだけである.
≪データベース|Database|oem_src≫:添削機能を提供するmongodbデータベース
ストレージ:ダウンロードしてファイルを削除するストレージサービスをアップロードすることができて、CDNを持参します
特色:小プログラム端で操作することもできるし、サービス端(クラウド関数、サーバー)で可視化操作データベースとストレージを操作することもでき、小プログラム端ではユーザーレベルの権限しかなく、サービス端では管理者の権限がある.
クラウド関数:
const cloud = require('wx-server-sdk')
exports.main = async(event, context) -> {
 const res = await cloud.callFunction({
  //          
  name: 'add',
  data: {
   x: 1,
   y: 2,
  }
  })
  return res.result
}

クラウドデータベース
ドキュメント型データベースデータベースには複数のセットが含まれており、セットは1つのjson配列に近似しており、配列内の各オブジェクトはレコードであり、レコードのフォーマットはjsonドキュメントである.
簡単で使いやすいデータベースapiは削除と検索を含んで、操作は簡単です:データベースの参照を取得して、クエリーを構築して、条件を更新して、要求を送信します
権限制御apiは、アプリケーション側とサービス側の2つの部分に分けられ、開発者は、アプリケーション内でapiを直接呼び出して非機密データの操作を行うことができる.
より高いセキュリティ要件を満たすデータについては、クラウド関数内でサービス側apiで操作できます.
クラウドデータベースapi
トリガネットワーク要求:getは集合を取得し、記録データaddは集合にupdate更新集合を新規に記録し、記録データsetは1つの記録removeを更新して記録count統計クエリー文に対応する記録条数を削除する
リファレンスdatabaseを取得データベースリファレンスを取得し、databaseオブジェクトcollectionを返してコレクションリファレンスを取得し、collectionオブジェクトdocを返してレコードへのリファレンスを取得し、documentオブジェクトを返します.
データベース・オブジェクトdatabase
commandはデータベースクエリーと更新命令を取得し、command serverDate構築サービス側時間を返す
コレクションオブジェクトcollection docは1つのレコードへの参照を取得し、documentオブジェクトaddに戻ってコレクションに新しいレコードwhereを追加し、現在のコレクションでのクエリー条件を構築し、queryを返します.クエリー条件ではクエリー命令orderByを使用してクエリーデータのソート方法を指定できますlimit戻りデータの数上限skip指定クエリー時ヒットしたレコードリストのいくつかの項目からfield指定戻り結果に含まれる各レコードに含まれるフィールドを指定します
レコードオブジェクトdocument get取得レコードデータupdateローカル更新データset置換更新レコードremove削除レコードfield戻り結果に含まれる金鶏路のフィールドを指定
commandオブジェクトクエリーdb.command
eqフィールドが指定値に等しいかneqフィールドが指定値に等しくないかitフィールドが指定値より小さいか
add
const db = wx.cloud.database();
db.collection('blog').add({
 data: {
  title: 'test blog',
  content: 'test content'
 }
 }).then((res) => {
 
}).catch(console.error);

ストレージapi uploadFileアップロードファイルdownloadFileダウンロードファイルdeleteFile削除ファイルgetTempFileURLスワップ一時リンク
uploadFile: function() {
 wx.choodeImage({
  success: dRes => {
   wx.cloud.uploadFile({
    cloudPath: cloudPath,
    filePath: dRes.tempFilePaths[0]
  }).then((res) => {
   
   }).catch(console.error);
  },
   fail: console.error,
  })
}

[外部リンク画像の転送に失敗しました(img-Mt 84 hzO-1566144096968)](https://upload-images.jianshu.io/upload_images/11158618-929ab0b349c60f10.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
従来の開発モデルは弾性伸縮、異郷災害対応、ネットワーク防護、負荷均衡、ネットワーク専用線、安全補強、冷備熱備、内容加速、監視警報、データベース、ファイル記憶、その他の要求、後端、小プログラム端
クラウド開発モードクラウド開発、データベース、ファイルストレージ、クラウド関数
従来の開発モデル:小プログラム端:wx.chooseImage + wx.uploadFileバックエンド:フレームワーク+ルーティング+テンセントクラウドオブジェクトストレージにアップロードされる論理メンテナンス:パフォーマンス+セキュリティ
クラウド開発モデル:
uploadFile: function() {
 wx.chooseImage({
  success: dRes => {
   wx.cloud.upload({
    cloudPath: cloudPath,
    filePath: dRes.temFilePaths[0]
  }).then(res) => {
  
 }).catch(console.error);
 },
 fail: console.error,
 })
}

wx.request
const db = wx.cloud.database();
db.collection('blog').add({
 data: {
  title: 'test blog',
  content: 'test content'
 }
 }).then((res) => {
 }).catch(console.error);

[外部チェーン画像の転送に失敗しました(img-ModltulyQ-15661440,96972)](https://upload-images.jianshu.io/upload_images/11158618-f5511877be5cf116.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
クラウド関数での処理:微信生成ウィジェットコードを呼び出すインタフェースは、画像をファイルストレージに格納して一時画像urlを取得する
クラウド関数処理ロジック:pageを入力し、paramクエリーウィジェットクラウドデータベースaccess_tokenは有効ですか?
有効なウィジェット取得ウィジェットコードbase 64はバイナリファイルに変換され、ウィジェットクラウドストレージにアップロードされて一時画像urlウィジェット端展示ウィジェットコードを取得する
無効なウィジェットインタフェース取得access_tokenキャッシュアクセスtokenからウィジェットクラウドデータベース
[外部リンクピクチャの転送に失敗しました(img-20 L 5 FDdH-1566144096973)](https://upload-images.jianshu.io/upload_images/11158618-c97ab7f1c3c5607c.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
[外部チェーン画像の転送に失敗しました(img-iXRYRpXy-1566144096976)](https://upload-images.jianshu.io/upload_images/11158618-de3c4480c6528838.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
[外部リンク画像の転送に失敗しました(img-lYDOOhTI-156144096977)](https://upload-images.jianshu.io/upload_images/11158618-5cd13d533a668104.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]
axios
本号の内容が不十分な点(例えば、著作権やその他の問題に関連する)があれば、直ちに私たちに連絡して改善すれば、最初の時間に処理されます.
いいね!あなたたちの賛同/励ましが私の書く最大の原動力だからです!
達叔小生の簡書に注目してください.
これは品質があり、態度のあるブログです.
[外部リンク画像の転送失敗(img-f 87 Kf 4 JN-1566144096980)](https://upload-images.jianshu.io/upload_images/11158618-9ab0d3fef85d80ce?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)]