我有一个Vue组件,它有一个对象,我想将其发送到laravel控制器! 这不仅仅是一个js对象!有谁知道我该如何将该对象作为json发送到laravel控制器?
答案 0 :(得分:0)
如果需要将整个对象作为字段传递,则必须将其作为字符串传递,然后在控制器上使用json_decode。
使用axios进行请求的示例:
axios.post("your_endpoint",
{your_object_field_name: JSON.stringify(your_object)}).then(res => {
//handle response
})
在控制器上:
public function yourControllerMethod(){
$data = response()->validate('your_object_field_name','required|json'); //validate the field so it is in valid json format
$jsonArray = json_decode($data); // here you have your json as a php object, pass true as second argument if you want an array (json_decode($data,true))
}
答案 1 :(得分:0)
以下是用于发送姓名和电子邮件的POST示例
//Variables
data(){
return{
object:{
name: null,
email: null,
}
}
}
//In methods
sendPost(){
axios.post("http://url-route-exemple.com", this.object).then(result => {
console.log(result.data); //return laravel
})
}
通过此操作,您可以获取laravel标准(PHP)中的名称和电子邮件数据
//In controller.php
$name = $request->input("name");
$email = $request->input("email");
$jsonNameAndEmail = json_encode($request->all());