我正在使用一个mysql库,当我对数据库执行更新时,如果得到一个代表1/0
的数字代表:
if record was not found 0 returned
if record found and something was changed 1 returned
if record found and nothing was not changed 0 returned
因此,我希望在找到记录并更改某些内容时返回使用200,并且我试图想如果结果为0,我应该如何返回用户?它应该是200吗?也许用户应该知道找不到记录......
事情是我不想打更多的电话,看看是否有记录,然后执行更新,我想保持它尽可能少的电话...
谢谢!
你理想的情况应该是:
200 OK / 204 No Content
404 Not Found
409 Conflict
现在你的主要问题听起来像“服务器无法确定更新失败的真正原因”。原因服务器无法做到这一点,它无法决定是发送404还是409状态。
有了这一切,您现在的情况是,如果服务器返回任何状态而不是OK(200/204),则客户端不知道更新期间发生了什么故障。而且这个强制客户端无论如何都会做出额外的请求以确定真正的原因
为避免对每个请求进行额外的服务检查,您可以做的是验证资源是否存在,仅用于失败的情况。换一种说法