@@ -4,18 +4,16 @@ var User = require("../models/users");
4
4
var auth = require ( '../middleware/auth' ) ;
5
5
6
6
//
7
- // ─── GET ROUTE ──────────────────────────────────────────────────────────────────
7
+ // ─── VIEW ROUTE ──────────────────────────────────────────────────────────────────
8
8
//
9
9
10
- router . get ( '/users' , auth , async ( req , res ) => {
11
- try {
12
- var users = await User . find ( { } ) ;
13
- res . send ( users ) ;
14
- } catch ( error ) {
15
- return res . status ( 500 ) . send ( "Error: " + error ) ;
16
- }
10
+ //We've changed the route below to prevent access of data of other users
11
+ router . get ( '/users/me' , auth , async ( req , res ) => {
12
+ res . send ( req . user ) ;
17
13
} ) ;
18
14
15
+ // ────────────────────────────────────────────────────────────────────────────────
16
+
19
17
router . get ( '/users/:id' , async ( req , res ) => {
20
18
var _id = req . params . id ;
21
19
@@ -64,6 +62,21 @@ router.post('/users/login',async (req, res) => {
64
62
}
65
63
} )
66
64
65
+ //
66
+ // ─── LOG OUT ────────────────────────────────────────────────────────────────────
67
+ //
68
+
69
+ router . post ( '/users/logout' , auth , async ( req , res ) => {
70
+ try {
71
+ req . user . tokens = req . user . tokens . filter ( ( token ) => {
72
+ return token . token != req . token ;
73
+ } )
74
+
75
+ await req . user . save ( ) ;
76
+ } catch ( e ) {
77
+ res . status ( 500 ) . send ( ) ;
78
+ }
79
+ } )
67
80
68
81
//
69
82
// ─── PATCH ROUTE ────────────────────────────────────────────────────────────────
0 commit comments