javascript 用于社交身份验证的DEFAULT用户架构
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript 用于社交身份验证的DEFAULT用户架构相关的知识,希望对你有一定的参考价值。
const mongoose = require('mongoose');
mongoose.Promise = global.Promise;
const validator = require('validator');
const mongodbErrorHandler = require('mongoose-mongodb-errors');
const passportLocalMongoose = require('passport-local-mongoose');
const userSchema = new mongoose.Schema({
name: {
type: String,
unique: true,
lowercase: true,
trim: true
},
email: {
type: String,
unique: true,
lowercase: true,
trim: true,
validate: [validator.isEmail, 'Invalid email address!'],
required: 'Please enter an email address!'
},
google: {
id: String,
token: String,
email: String,
name: String
},
twitter: {
id: String,
token: String,
email: String,
name: String
},
facebook: {
id: String,
token: String,
email: String,
name: String
},
resetPasswordToken: String,
resetPasswordExpires: Date,
});
// add passport-local authentication methods to schema
userSchema.plugin(passportLocalMongoose, {
usernameField: 'email'
});
// mongodbErrorHandler beautifies errors
userSchema.plugin(mongodbErrorHandler);
module.exports = mongoose.model('User', userSchema);
以上是关于javascript 用于社交身份验证的DEFAULT用户架构的主要内容,如果未能解决你的问题,请参考以下文章
AWS Cognito 用户池 + 用于身份验证/登录的社交提供商
用于登录 Facebook 的 Python 社交身份验证无法在生产服务器上运行
django-rest-auth vs djoser,哪一个用于社交身份验证?
用于 Spotify 的 Python 社交身份验证:重定向缺少“状态”参数
使用社交身份验证限制访问静态网站的最简单方法是啥
使用 oAuth 对 javascript 小部件进行身份验证