一、什么是bmob后端云牵寺?這個能用來干什么悍引?
我們在開發(fā)項目的時候肯定需要開發(fā)服務器的,但在個人開發(fā)時除了寫客戶端之外還要再寫服務器端就很麻煩
這時候使用bmob后端云就能完美解決我們這個問題(重點是免費的C泵ァHそ铩!)
我們只需進行服務器開發(fā)即可
bomb后端云官網:Bmob后端云
二黎休、如何使用后端云
登陸注冊一個賬號和看開發(fā)文檔浓领;
因為是簡單的東西我就此跳過玉凯,涉及相關的操作下面我會詳細提出的
三、使用bmob后端云實現(xiàn)的微信小程序自動登錄
1.網站后臺創(chuàng)建應用
登陸進去用戶中心后點擊左上方的創(chuàng)建應用
填好你要創(chuàng)建的應用相關信息
進行掃碼綁定后創(chuàng)建成功
2.配置小程序密鑰和獲取應用密鑰
登錄微信公眾平臺联贩,進入設置->開發(fā)設置來獲取AppID和AppSecret
然后回到bmob漫仆,進入設置->應用配置,將AppID和AppSecret填進去即可
3.配置安全域名
進入微信小程序后臺配置里
在設置->開發(fā)設置->服務器域名
如圖所示進行配置
4.下載和安裝BmobSDK
使用方法:
①下載將utils目錄復制至項目目錄下
②在App.js初始化SDK
var Bmob = require('utils/bmob.js');
Bmob.initialize("你的Application ID", "你的REST API Key");
Application ID和 REST API Key在后端云的設置->應用秘鑰里獲得
5.小程序相關開發(fā)
使用后端云實現(xiàn)一鍵登錄很簡單
固定寫法
只需在APP.js這樣子寫就行了
App({
onLaunch: function () {
var user = new Bmob.User() //開始注冊用戶
user.auth().then(function (obj) {
console.log('登陸成功')
},
function (err) {
console.log('失敗了', err)
});
},
getUserInfo: function (cb) {
var that = this
if (this.globalData.userInfo) {
typeof cb == 'function' && cb(this.globalData.userInfo)
} else {
//調用登錄接口
wx.login({
success: function () {
wx.getUserInfo({
success: function (res) {
that.globalData.userInfo = res.userInfo
typeof cb == 'function' && cb(that.globalData.userInfo)
}
})
}
})
}
},
globalData: {
userInfo: null
}
})
user用戶對象中的loginWithWeapp方法使用當前使用小程序的微信用戶身份注冊或登錄泪幌,成功后用戶的 session 會在設備上持久化保存盲厌,之后可以使用 Bmob.User.current() 獲取當前登錄用戶
如果該用戶是第一次使用此應用,調用登錄 API 會創(chuàng)建一個新的用戶祸泪,你可以在 控制臺 >應用> 數(shù)據(jù) 中的 _User表中看到該用戶的信息吗浩,如果該用戶曾經使用該方式登錄過此應用,再次調用登錄 API 會返回同一個用戶没隘。
登錄后獲取到一個用戶數(shù)據(jù)對象拓萌,包括用戶唯一標識objectId、openid升略、nickName微王、avatarUrl、authData品嚣,authData包括session_token登錄校驗炕倘,小程序sdk封裝了請求帶上了緩存authData的session_token,所以session_token這部分 不需要bmob的開發(fā)者考慮翰撑;
當前用戶
如果用戶每次打開App的時候都要求登錄無疑是令人感到厭煩的罩旋,你可以通過緩存當前的Bmob.User對象來避免這個問題。
無論你使用任何注冊或者登錄方法眶诈,用戶都會在localStorage中儲存涨醋,你可以把緩存作為一個session對待,并且自動假設用戶已經登錄了逝撬。
你可以操作Bmob.User.current()來獲取當前用戶的信息
用戶安全
Bmob.User類默認就是受保護的浴骂,在Bmob.User中保存的數(shù)據(jù)只能被那個用戶所修改。默認地宪潮,數(shù)據(jù)仍然可以被任意客戶端所讀取溯警。這樣就是說,有些Bmob.User對象被認證后是可以修改的狡相,其他的仍然是只讀的梯轻。
特別的,你不能調用save或者delete方法除非Bmob.User經過了認證尽棕,就比如調用過了logIn或者signUp方法喳挑,這樣保證只有用戶能改動他們自身的數(shù)據(jù)。
怎么樣,都很簡單吧伊诵!