我在Rest API中使用无胖框架。我对我的一个数据库字段有一个唯一约束。我的问题是如何根据mysql重复输入错误触发正确的HTTP错误。
以下是我的插入功能
$username = $f3->get('username');
$status=$GLOBALS['db']->exec('INSERT INTO Users
VALUES(:userID,:username)',
array(':userID'=>'',':username'=>$username));
header('Content-Type: application/json');
return (json_encode($status));
我的insert语句根据字段
上的唯一约束触发跟随错误Internal Server Error
PDOStatement: Duplicate entry 'someUserName' for key 'username'
我想触发HTTP错误,因为在客户端我可以处理HTTP错误。 请指导我。
答案 0 :(得分:0)
尝试查看此文档:{{3p>
答案 1 :(得分:0)
你可以尝试一下try / catch语句并调用$ f3->错误('400','MSG')来发送你喜欢的一个http状态代码并触发ONERROR处理程序, 如果您只想发送状态代码标头,可以使用f3->状态方法