You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过GET请求从Vue JS前端向Laravel控制器发送请求参数对象

问题原因

GET 请求的参数按照HTTP规范是携带在URL的查询字符串中,绝大多数服务端框架(包括Laravel)默认不会解析GET请求的请求体内容。
你当前的问题是Axios中get方法的请求配置使用了data字段传递参数,data字段是用来设置请求体内容的,仅对POST/PUT等带请求体的请求生效,GET请求下需要用params字段传递参数,Axios会自动将params的内容拼接为URL查询字符串。

解决方法

将你的Axios请求配置中的data字段替换为params即可,修改后的代码如下:

var data= {
  "qty": 1000,
  "id": 1
}
var config = {
  method: 'get',
  url: 'http://127.0.0.1:8000/api/check_quantity',
  params: data // 仅需将此处的data改为params即可
};

axios(config)
.then(function (response) {
  console.log("returned :", response)
  commit('set_products', payload);
})
.catch(function (error) {
  console.log("this is error:",error);
});

修改后请求会自动携带查询参数,实际请求URL会变为 http://127.0.0.1:8000/api/check_quantity?qty=1000&id=1,Laravel的$request->all()就可以正常获取到参数。

补充说明

Postman中GET请求可以正常获取参数,是因为你在Postman的Params栏填写的参数,Postman会自动将其拼接为URL查询字符串,而非放到请求体中,和我们修改后的Axios请求逻辑一致。

内容的提问来源于stack exchange,提问作者adeab

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.01 14:15:06