首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >返回空数组而不是Laravel Vue中的数据的API

返回空数组而不是Laravel Vue中的数据的API
EN

Stack Overflow用户
提问于 2020-01-06 05:30:43
回答 2查看 509关注 0票数 0

我正在为学校做一个Laravel Vue项目,我应该通过从客户端发送用户的电子邮件来获取用户,但当服务器响应时,我从响应数据中获得一个空数组,而不是从数据库中获得我想要的数据。

Login.vue

代码语言:javascript
运行
复制
login() {

        this.showMessage = true;
        this.typeofmsg = "alert";
        this.message = "Loggin in...";

        axios.post('api/login', this.user)
            .then(response => {
                const token = response.data.access_token;
                this.$store.commit('setAccessToken', token);
                return axios.get('api/users/me', this.user.email);
            })
            .then(response => {
                console.log(response);
            })
            .catch(error => {
                console.log("Error = " + error.message);
            });

    },

routes/api.js

代码语言:javascript
运行
复制
Route::get('users/me', 'UserControllerAPI@myProfile');

UserControllerAPI

代码语言:javascript
运行
复制
public function myProfile(Request $request){
    $email = $request->email;
    $user = User::where('email', $email)->first();
    return new UserResource($user);
}

如果我试着和邮递员联系,它会起作用的。

在dev tools控制台中,我得到了如下信息

抱歉,如果我说得不够清楚,或者是做错了什么,我从昨天开始就一直在尝试解决这个问题,这让我抓狂。感谢您的任何帮助

编辑:路由错误,但我更改了它,得到的结果是相同的,没有数据。我也改变了控制台的图片

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-01-06 05:37:00

更改此行:

代码语言:javascript
运行
复制
return axios.get('api/users/me', this.user.email);

代码语言:javascript
运行
复制
return axios.get('api/users/me', { params: { email: this.user.email } });
票数 2
EN

Stack Overflow用户

发布于 2020-01-06 05:35:38

您有api/user/me,在路由中有/userS/me

所以我猜你要么去掉S,要么在其中一个地方添加S。

所以试着改变路线

代码语言:javascript
运行
复制
Route::get('users/me', 'UserControllerAPI@myProfile');

代码语言:javascript
运行
复制
Route::get('/user/me', 'UserControllerAPI@myProfile');
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59604365

复制
相关文章

相似问题

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