Javascript I';我试图在验证后进行模板渲染时获取数据,但请求返回401(未经授权)
我试图在验证后模板呈现时获取数据,但请求返回401(未经授权)。。。当我刷新页面时,数据被加载 登录时: 得到http://localhost:0666/core/user/ 401(未经授权) 刷新页面时: Login.vue 有一个表单可以提交用户和密码Javascript I';我试图在验证后进行模板渲染时获取数据,但请求返回401(未经授权),javascript,vue.js,Javascript,Vue.js,我试图在验证后模板呈现时获取数据,但请求返回401(未经授权)。。。当我刷新页面时,数据被加载 登录时: 得到http://localhost:0666/core/user/ 401(未经授权) 刷新页面时: Login.vue 有一个表单可以提交用户和密码 <script> import { mapActions } from 'vuex' export default { data: () => ({ form: { username: '',
<script>
import { mapActions } from 'vuex'
export default {
data: () => ({
form: {
username: '',
password: ''
}
}),
components: {},
methods: {
...mapActions('auth', ['ActionDoLogin']),
async submit () {
try {
await this.ActionDoLogin(this.form)
this.$router.push({ name: 'Dashboard' })
} catch (err) {
alert(err.data ? err.data.message : 'Não foi possivel fazer login')
}
}
}
}
</script>
services.js
export default {
login: { method: 'post', url: 'api-token-auth/' },
loadSession: { method: 'get', url: 'core/user/' }
}
这可能是什么原因造成的?帮帮我…这不是解决方案,而是“解决”了我的问题 在Login.vue中,我发送一个参数p:true
<script>
import { mapActions } from 'vuex'
export default {
data: () => ({
form: {
username: '',
password: ''
}
}),
components: {},
methods: {
...mapActions('auth', ['ActionDoLogin']),
async submit () {
try {
await this.ActionDoLogin(this.form)
this.$router.push({ name: 'Dashboard', params: { p: true } })
} catch (err) {
alert(err.data ? err.data.message : 'Não foi possivel fazer login')
}
}
}
}
</script>
我仍然在寻找最好的解决方案,但暂时这已经足够了
export default {
login: { method: 'post', url: 'api-token-auth/' },
loadSession: { method: 'get', url: 'core/user/' }
}
<script>
import { mapActions } from 'vuex'
export default {
data: () => ({
form: {
username: '',
password: ''
}
}),
components: {},
methods: {
...mapActions('auth', ['ActionDoLogin']),
async submit () {
try {
await this.ActionDoLogin(this.form)
this.$router.push({ name: 'Dashboard', params: { p: true } })
} catch (err) {
alert(err.data ? err.data.message : 'Não foi possivel fazer login')
}
}
}
}
</script>
mounted () {
LoadSession.get().then(resp => {
this.user = resp.data
})
if (this.$route.params.p) {
this.$route.params.p = false
location.reload()
}
}