首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SPA vue前端和Laravel 7后端Sanctum

SPA vue前端和Laravel 7后端Sanctum
EN

Stack Overflow用户
提问于 2020-07-04 19:54:06
回答 1查看 588关注 0票数 0

我创建了一个vue和Laravel使用Sanctum,发送请求使用axios,但我得到状态204,当我试图获取用户信息,我得到了Unauthenticated,我不知道什么是错的!!

这是我的api.php

代码语言:javascript
复制
Route::middleware('auth:sanctum')->get('/user', function (Request $request) {
    return $request->user();
});

home.vue

代码语言:javascript
复制
<script>
import axios from "axios";
axios.defaults.withCredentials = true;
axios.defaults.baseURL = "http://localhost:8000/";

export default {
  name: "Home",
  methods: {
    login() {
      axios.get("/sanctum/csrf-cookie").then((response) => {
         axios.post('/login',{
           email:'user@user.com',
           password:'123456789'
         })
         .then(response=>{
           console.log(response)
         })
      });
    },
  },
};
</script>

dashboard.vue

代码语言:javascript
复制
<script>
import axios from "axios";
axios.defaults.withCredentials = true;
axios.defaults.baseURL = "http://localhost:8000/";

export default {
 mounted(){
     axios.get("/api/user").then((response)=>{
       console.log(response);
     })
 }
}
</script>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-07 21:17:32

解决了!通过编辑提供者/RouteServiceProvider.php,将mapApiRoutes函数从中间件(‘api’)改为中间件(‘web’)

代码语言:javascript
复制
protected function mapApiRoutes()
    {
        Route::prefix('api')
            ->middleware('web')
            ->namespace($this->namespace)
            ->group(base_path('routes/api.php'));
    }
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62733796

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档