Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const mongoose = require('mongoose');
- const validator = require('validator');
- const jwt = require('jsonwebtoken');
- let UserSchema = new mongoose.Schema({
- email: {
- type: String,
- required: true,
- minlength: 1,
- trim: true,
- unique: true,
- validate: {
- validator: validator.isEmail,
- message: '{VALUE} is not a valid email'
- }
- },
- password: {
- type: String,
- required: true,
- minlength: 6
- },
- tokens: [{
- access: {
- type: String,
- required: true
- },
- token: {
- type: String,
- required: true
- }
- }]
- });
- UserSchema.method('generateAuthToken', function() {
- let user = this;
- let access = 'auth';
- let token = jwt.sign({_id: this._id.toHexString(), access}, 'secret').toString();
- console.log(token);
- console.log(jwt.verify(token, 'secret'));
- console.log(user.tokens);
- // user.tokens[] = {access, token};
- // this.tokens.push({acces, token});
- // user.tokens = user.tokens.concat([{access, token}]);
- return this.save().then(() => {
- return token;
- });
- });
- let User = mongoose.model('User', UserSchema);
- module.exports = {User};
Add Comment
Please, Sign In to add comment