一、什么是bmob后端云杀捻?這個能用來干什么素标?
我們在開發(fā)項目的時候肯定需要開發(fā)服務(wù)器的麻削,但在個人開發(fā)時除了寫客戶端之外還要再寫服務(wù)器端就很麻煩
這時候使用bmob后端云就能完美解決我們這個問題(重點是免費的!F3娴铩)
我們只需進行服務(wù)器開發(fā)即可
bomb后端云官網(wǎng):Bmob后端云
二、如何使用后端云
登陸注冊一個賬號和看開發(fā)文檔胸梆;
因為是簡單的東西我就此跳過敦捧,涉及相關(guān)的操作下面我會詳細提出的
三想括、使用bmob后端云實現(xiàn)的微信小程序自動登錄
1.網(wǎng)站后臺創(chuàng)建應(yīng)用
登陸進去用戶中心后點擊左上方的創(chuàng)建應(yīng)用
填好你要創(chuàng)建的應(yīng)用相關(guān)信息
進行掃碼綁定后創(chuàng)建成功
2.配置小程序密鑰和獲取應(yīng)用密鑰
登錄微信公眾平臺,進入設(shè)置->開發(fā)設(shè)置來獲取AppID和AppSecret
然后回到bmob做裙,進入設(shè)置->應(yīng)用配置者娱,將AppID和AppSecret填進去即可
3.配置安全域名
進入微信小程序后臺配置里
在設(shè)置->開發(fā)設(shè)置->服務(wù)器域名
如圖所示進行配置
4.下載和安裝BmobSDK
使用方法:
①下載將utils目錄復(fù)制至項目目錄下
②在App.js初始化SDK
varBmob =require('utils/bmob.js');Bmob.initialize("你的Application ID","你的REST API Key");
Application ID和 REST API Key在后端云的設(shè)置->應(yīng)用秘鑰里獲得
5.小程序相關(guān)開發(fā)
使用后端云實現(xiàn)一鍵登錄很簡單
固定寫法
只需在APP.js這樣子寫就行了
App({onLaunch:function(){varuser =newBmob.User()//開始注冊用戶user.auth().then(function(obj){console.log('登陸成功')? ? },function(err){console.log('失敗了', err)? ? ? });? },getUserInfo:function(cb){varthat =thisif(this.globalData.userInfo) {typeofcb =='function'&& cb(this.globalData.userInfo)? ? }else{//調(diào)用登錄接口 wx.login({success:function(){? ? ? ? ? wx.getUserInfo({success:function(res){? ? ? ? ? ? ? that.globalData.userInfo = res.userInfotypeofcb =='function'&& cb(that.globalData.userInfo)? ? ? ? ? ? }? ? ? ? ? })? ? ? ? }? ? ? })? ? }? },globalData: {userInfo:null}})
user用戶對象中的loginWithWeapp方法使用當前使用小程序的微信用戶身份注冊或登錄,成功后用戶的 session 會在設(shè)備上持久化保存秽荤,之后可以使用 Bmob.User.current() 獲取當前登錄用戶
如果該用戶是第一次使用此應(yīng)用甜奄,調(diào)用登錄 API 會創(chuàng)建一個新的用戶,你可以在 控制臺 >應(yīng)用> 數(shù)據(jù)中的_User表中看到該用戶的信息窃款,如果該用戶曾經(jīng)使用該方式登錄過此應(yīng)用课兄,再次調(diào)用登錄 API 會返回同一個用戶。
登錄后獲取到一個用戶數(shù)據(jù)對象晨继,包括用戶唯一標識objectId烟阐、openid、nickName踱稍、avatarUrl曲饱、authData,authData包括session_token登錄校驗珠月,小程序sdk封裝了請求帶上了緩存authData的session_token扩淀,所以session_token這部分 不需要bmob的開發(fā)者考慮;
當前用戶
如果用戶每次打開App的時候都要求登錄無疑是令人感到厭煩的啤挎,你可以通過緩存當前的Bmob.User對象來避免這個問題驻谆。
無論你使用任何注冊或者登錄方法,用戶都會在localStorage中儲存庆聘,你可以把緩存作為一個session對待胜臊,并且自動假設(shè)用戶已經(jīng)登錄了。
你可以操作Bmob.User.current()來獲取當前用戶的信息
用戶安全
Bmob.User類默認就是受保護的伙判,在Bmob.User中保存的數(shù)據(jù)只能被那個用戶所修改象对。默認地,數(shù)據(jù)仍然可以被任意客戶端所讀取宴抚。這樣就是說勒魔,有些Bmob.User對象被認證后是可以修改的,其他的仍然是只讀的菇曲。
特別的冠绢,你不能調(diào)用save或者delete方法除非Bmob.User經(jīng)過了認證,就比如調(diào)用過了logIn或者signUp方法常潮,這樣保證只有用戶能改動他們自身的數(shù)據(jù)弟胀。