Guest User

Untitled

a guest
Jun 8th, 2018
94
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.17 KB | None | 0 0
  1. import axios from 'axios'
  2. import jwtDecode from 'jwt-decode'
  3.  
  4. export const moduleLoginStore = {
  5. state: {
  6. jwt: localStorage.getItem('t'),
  7. endpoints: {
  8. obtainJWT: 'http://localhost/api/v1/token/auth/',
  9. refreshJWT: 'http://localhost/api/v1/token/refresh/'
  10. }
  11. },
  12. mutations: {
  13. updateToken (state, newToken) {
  14. localStorage.setItem('token', newToken)
  15. state.jwt = newToken
  16. },
  17. removeToken (state) {
  18. localStorage.removeItem('token')
  19. state.jwt = null
  20. }
  21. },
  22. actions: {
  23. obtainToken ({state, commit}, {username, password}) {
  24. const payload = {
  25. username: username,
  26. password: password
  27. }
  28. axios.post(state.endpoints.obtainJWT, payload).then((response) => {
  29. commit('updateToken', response.data.token)
  30. }).catch((error) => {
  31. console.log(error)
  32. })
  33. },
  34. refreshToken ({state, commit}) {
  35. const payload = {
  36. token: state.jwt
  37. }
  38. axios.post(state.endpoints.refreshJWT, payload)
  39. .then((response) => {
  40. commit('updateToken', response.data.token)
  41. })
  42. .catch((error) => {
  43. console.log(error)
  44. })
  45. }
  46. }
  47. }
Add Comment
Please, Sign In to add comment