@frely/auth-node
v0.0.3-2-g57ed928
Published
## install package Create a `.npmrc` file in the project on which you wanted to install the package and insert the following lines ``` //registry.npmjs.org/:_authToken=<TOKEN> ``` you can then do `npm install --save @frely/auth-node`
Downloads
12
Readme
auth-node
install package
Create a .npmrc
file in the project on which you wanted to install the package and insert the following lines
//registry.npmjs.org/:_authToken=<TOKEN>
you can then do npm install --save @frely/auth-node
Exemple code index.js
const authNode = require('@frely/auth-node');
const express = require('express');
const bodyParser = require('body-parser');
const mongoose = require('mongoose');
// Import user model
const User = require('./models/user');
const app = express();
// Config mongoose connect
mongoose.connect('mongodb://localhost:27017/database', {useNewUrlParser: true});
// Config body-parser
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());
// Signup route
app.post('/register', authNode.register());
// Signin route
app.post('/login', authNode.login());
// check auth
app.get('/secret', authNode.checkToken(), (req, res) => {
res.json(req.decoded);
});
app.listen(process.env.PORT || 3000, () => console.log(`App run port : ${process.env.PORT || 3000}`))
Exemple code ./models/user.js
const mongoose = require('mongoose');
const uuidv4 = require('uuid/v4');
const Schema = mongoose.Schema;
const UserSchema = new Schema({
_id: { type: String, default: uuidv4 },
email: { type: String, lowercase: true, unique: true },
password: String,
}, {
timestamps: true
});
module.exports = mongoose.model('User', UserSchema);
API exemple
POST /register
Headers
{
"Content-Type": "application/json"
}
Body
{
"email": "[email protected]",
"password": "toto"
}
Response 200
{
"token": "eyJhbGciOiJIUzI...hLphM"
}
POST /login
Headers
{
"Content-Type": "application/json"
}
Body
{
"email": "[email protected]",
"password": "toto"
}
Response 200
{
"token": "eyJhbGciOiJIUzI...hLphM"
}
POST /secret
Headers
{
"Authorization": "Bearer eyJhbGciOiJIUzI...hLphM"
}
Response 200
{
"message": "Success",
"id": "49b76e86-8857-4d5b-b00d-7359b6c0ede6",
"iat": 1558172092,
"exp": 1558179292
}