这是我通过邮递员发送的“规范”字段的json数据:
{
"specification": [
{
"type": [
{
"type": "Smartphone , Phablet , Notch Phone , Camera Phone , Selfie Phone",
"shape": "Bar"
}
],
"basic": [
{
"os": "Smartphone , Phablet , Notch Phone , Camera Phone , Selfie Phone",
"Sim": "Bar"
}
]
}
]
}
然后在控制器中,验证规则为:
'specification' => 'required|json'
错误消息:“规范必须是有效的JSON字符串。”
如何在laravel控制器中发送和检查有效的json?
答案 0 :(得分:1)
json
正在验证的字段必须是有效的 JSON字符串。
您的数据已由Laravel本身从JSON解析,并且specification
已经是一个 array ,而不是JSON string 。您可以通过将规则更改为required|array
来进行检查,然后看看它会通过。
答案 1 :(得分:0)
您要在此处发布的字符串不是有效的json字符串。有效的json字符串以{
和}
开头和结尾。因此,在您的情况下,应该是这样的:
{
"specification": [{
"type": [{
"type": "Smartphone , Phablet , Notch Phone , Camera Phone , Selfie Phone",
"shape": "Bar"
}],
"basic": [{
"os": "Smartphone , Phablet , Notch Phone , Camera Phone , Selfie Phone",
"Sim": "Bar"
}]
}]
}