Skip to content

Instantly share code, notes, and snippets.

@dapperAuteur
Last active March 24, 2018 00:10
Show Gist options
  • Save dapperAuteur/1830994cefe09af6fcc291c99c6d3b5f to your computer and use it in GitHub Desktop.
Save dapperAuteur/1830994cefe09af6fcc291c99c6d3b5f to your computer and use it in GitHub Desktop.
below is the index.js file for my app error message I get on public routes of my api when attempting to add auth0
{
"error": {
"message": "No authorization token was found"
}
}
require('dotenv').config()
var express = require('express'),
app = express();
cors = require('cors'),
bodyParser = require('body-parser');
var jwt = require('express-jwt');
var jwtAuthz = require('express-jwt-authz');
var jwks = require('jwks-rsa');
var db = require('./models');
var classroomRoutes = require('./routes/classrooms');
var mealRoutes = require('./routes/meals');
var studentRoutes = require('./routes/students');
var teacherRoutes = require('./routes/teachers');
var userRoutes = require('./routes/users');
if (!process.env.AUTH0_DOMAIN) {
throw 'Make sure you have AUTH0_DOMAIN, in your .env file.';
}
var jwtCheck = jwt({
// Dynamically provide a signing key based on the kid in the header and the singing keys provided by the JWKS endpoint.
secret: jwks.expressJwtSecret({
cache: true,
rateLimit: true,
jwksRequestsPerMinute: 5,
jwksUri: `https://${process.env.AUTH0_DOMAIN}/.well-known/jwks.json`
}),
// Validate the audience and the issuer.
audience: process.env.AUTH0_AUDIENCE,
issuer: `https://${process.env.AUTH0_DOMAIN}/`,
algorithms: ['RS256']
});
const errorHandler = require("./handlers/error");
app.use(cors());
app.use(bodyParser.json());
app.use(bodyParser.urlencoded({ extended: true }));
app.use(jwtCheck);
app.get('/', function (req, res) {
res.send("Buenas de el red");
});
app.get('/pickler', function (req, res) {
res.send({ message: "I'm A Pickler And You Know This." });
});
app.get('/api/public', function (req, res) {
res.json({ message: 'Hello from a public endpoint. You do not need to be authenticated to see this.'});
});
app.get('/api/private', jwtCheck, function (req, res) {
res.json({ message: 'This is a private endpoint.'});
});
app.get('/authorized', function (req, res) {
res.send('Secured Resource');
});
const PORT = process.env.PORT || 8085;
// app.use(function (req, res, next) {
// let err = new Error("Not Found");
// err.status = 404;
// next(err);
// });
app.use(errorHandler);
app.get('/api/ver0001/classrooms/', classroomRoutes);
app.get('/api/ver0001/classrooms/:id', classroomRoutes);
app.post('/api/ver0001/classrooms/', classroomRoutes);
app.put('/api/ver0001/classrooms/:id', classroomRoutes)
app.delete('/api/ver0001/classrooms/:id', classroomRoutes);
app.use('/api/ver0001/classrooms/', classroomRoutes);
app.get('/api/ver0001/meals/', mealRoutes);
app.get('/api/ver0001/meals/:id', mealRoutes);
app.post('/api/ver0001/meals/', mealRoutes);
app.put('/api/ver0001/meals/:id', mealRoutes)
app.delete('/api/ver0001/meals/:id', mealRoutes);
app.use('/api/ver0001/meals/', mealRoutes);
app.get('/api/ver0001/students/', studentRoutes);
app.get('/api/ver0001/students/:id', studentRoutes);
app.post('/api/ver0001/students/', studentRoutes);
app.put('/api/ver0001/students/:id', studentRoutes)
app.delete('/api/ver0001/students/:id', studentRoutes);
app.use('/api/ver0001/students/', studentRoutes);
app.get('/api/ver0001/teachers/', teacherRoutes);
app.get('/api/ver0001/teachers/:id', teacherRoutes);
app.post('/api/ver0001/teachers/', teacherRoutes);
app.put('/api/ver0001/teachers/:id', teacherRoutes)
app.delete('/api/ver0001/teachers/:id', teacherRoutes);
app.use('/api/ver0001/teachers/', teacherRoutes);
app.get('/api/ver0001/users/', userRoutes);
app.get('/api/ver0001/users/:id', userRoutes);
app.post('/api/ver0001/users', userRoutes);
app.delete('/api/ver0001/users/:id', userRoutes);
app.use('/api/ver0001/users', userRoutes);
app.listen(PORT, function () {
console.log(`My App is Running on port ${PORT}`);
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment