· 7 years ago · Mar 23, 2018, 02:36 AM
1# server.js
2
3app.use(bodyParser.json())
4app.use(bodyParser.urlencoded({
5 extended: true
6}))
7app.use(cookieParser())
8
9app.use(
10 session({
11 secret: 'random-string',
12 resave: false,
13 saveUninitialized: false,
14 cookie: { maxAge: 80000 }
15 })
16)
17
18// login
19app.post('/auth/', function (req, res) {
20
21 const payload = req.body
22 const env = process.env
23 let body = {
24 client_secret: env.CLIENT_SECRET,
25 username: payload.username,
26 password: payload.password,
27 }
28 const ApiUrl = env.API_URL
29 let selfRes = res
30 selfRes.set('Content-Type', 'application/json')
31 axios.post(API_URL + '/oauth/token', body)
32 .then((res) => {
33 req.session.loginUser = res.data
34 selfRes.status(201)
35 // return selfRes.json({ ok: true })
36 selfRes.redirect('/')
37 })
38 .catch((error) => {
39 selfRes.status(error.response.status)
40 selfRes.json(error.message)
41 })
42})
43
44
45// store index.js
46
47nuxtServerInit({ commit }, context) {
48 console.log(context.req.session)
49 if (context.req.session && context.req.session.loginUser) {
50 let userData = {
51 status: true,
52 token: context.req.session.loginUser.access_token,
53 user : context.req.session.loginUser,
54 role: context.req.session.loginUser.role
55 }
56 commit('setLogin',userData)
57 }
58 }