I am trying to verify a JWT token each time the created()
hook is called:
In my App.vue:
async created() {
if (localStorage.getItem("currentUser") !== null) {
const token = JSON.parse(localStorage.getItem("currentUser")).token;
console.log(token); //[CORRECT TOKEN STRING]
await this.$store.dispatch("tryLogin", token);
}},
In my actions.js:
async tryLogin(context, payload) {
console.log(payload); //[CORRECT TOKEN STRING]
console.log(...payload); //(Spreding does not work)
return context.dispatch("verifyAuth", {
payload,
});
},
Further down in my actions.js:
async verifyAuth(context, payload) {
console.log(`inside VerifyAuth ${payload}`); //[Converted to: [object Object]]
// Above log Output: inside VerifyAuth [object Object]
let url = baseURL + "verify-token";
var formdata = new FormData();
formdata.append("token", payload);
const response = await fetch(url, {
method: "POST",
headers: {
Accept: "application/json",
},
body: formdata,
redirect: "follow",
});
const responseData = await response.json();
}
For some reason once I do return context.dispatch("verifyAuth", { payload, });
the payload changes from the actual stored string (token) to [object Object]
I tried spreading the payload which vields the same results.
I also tried JSON.parse(console.log("inside VerifyAuth: " + payload));
with no luck
Any idea why this is happening?