我有一個簡單的Backbone.js應用程序,User
模型具有不同的角色,我使用json-server來模擬一些後端基礎知識。我需要進行基本身份驗證 - 即我需要我的用戶能夠在某處登錄並保存會話(因爲他每次刷新瀏覽器時都不需要登錄)。我有一個db.json
文件,其中我已經有一些用戶:沒有後端的用戶身份驗證
{
"users": [
{
"login": "admin",
"password": "password",
"role": "admin",
"id": 1
}
]
}
,這裏是我的User
型號:
var User = Backbone.Model.extend({
defaults: {
login: "",
password: "",
role: ""
},
// Updated
url: function() {
return "http://localhost:3000/users?login=" +
this.attributes.login + "&password=" + this.attributes.password;
}
});
我沒有得到相當不錯的,我怎麼能管理認證(即進入login
和password
以形式存儲用戶會話而沒有適當的後端)。我考慮在我的User
模型中創建一個token
字段,並在每次用戶登錄並將其保存在Cookie中時填寫,但我不明白我怎麼能這樣做。如果有人能幫助我完成這項任務,我將非常感激。
ADDDED這在我看來是我的登錄功能:
signIn: function() {
var login = $('#js-login').val();
var password = $('#js-password').val();
if (login && password) {
var currentUser = new User({
login: login,
password: password
});
currentUser.fetch({
success: function() {
console.log(currentUser.toJSON());
},
error: function (err) {
console.log(err);
}
});
}
}
但是,相反的發現從我的JSON-服務器的用戶,它只是創建一個新用戶的所有空屬性除外#js-login
值和#js-password
輸入字段
ADDED我想我應該在我的收藏品在上述url
查詢發現我的用戶,但我沒有真正得到我將如何管理該
謝謝!這看起來正是我需要的東西。但我不明白我將如何從我的登錄表單中獲取用戶的登錄名和密碼,找到此用戶並將其憑據存儲在Cookie中。你能解釋一點嗎? – AlexNikolaev94
我更新了答案。順便說一句,你的問題在評論是非常流行的,更好的搜索谷歌例如。 – Akivamu
我試過你的變體,它似乎創建一個新的用戶,而不是得到一個已經存在的:(它只是創建一個新的用戶,除了登錄和密碼,我輸入到輸入字段,而不是找到一個與這些憑據登錄和密碼 – AlexNikolaev94