我正在使用Laravel与Vuejs和AXIOS进行HTTP请求。我正在发送一个包含对象数组的帖子请求。那么在我的laravel商店函数中,如何从$ request中检索该数据?
我的问题数组如下:
data:{
questions:[{
question:'',
opt1:''
},
{
question:'',
opt1:''
}
]
}
控制器中的Laravel Store方法:
public function store(Request $request)
{
return $request;
}
vue code:
axios.post('/addTest',this.$data.questions).then(response=>{
console.log(response.data);
});
在这段代码中,问题是一个对象数组。
答案 0 :(得分:0)
如果this.$data.questions
是一个数组,您只需使用input()
方法提取所有问题:
$questions = $request->input();
假设您只想提取第二项的question
属性,您可以在Laravel中这样做:
$secondQuestion = $request->input('1.question');
但是,如果您将问题作为对象传递,那也很好:
axios.post('/addTest', { questions: this.$data.questions });
你的PHP部分将如下所示:
$questions = $request->input('questions');
希望这会给你一些想法。
答案 1 :(得分:0)
在Laravel中你有一个商店方法,然后你返回请求?你为什么这样做?从前端看到请求?如果是,那么我建议您使用postman。
邮递员易于使用,您可以发送类似的前端发送请求。然后在laravel商店功能,你可以做
dd($request) //to output the request that postman sends
你说:我如何从$ request
中检索这些数据
如果您从前端发送类似
的内容{ id: 1 }
然后在laravel你可以做
$id = $request->get('id');
下面你可以看到我如何用邮递员发送请求,以及如何输出请求。
您对邮递员的要求
输出请求的Laravel代码
Laravel的回应显示在邮递员中