我们正在开发一个RESTful api,它以JSON编码数据的形式接受请求中的查询参数.
我们想知道当非请求/非预期参数与所需参数一起传递时,正确的行为是什么.
例如,我们可能要求给定端点上的PUT请求必须分别为密钥名称和姓氏提供两个值:
{ "name": "Jeff", "surname": "Atwood" }
如果虚假键也被传递,如下例中的颜色,该怎么办?
{ "name": "Jeff", "surname": "Atwood", "color": "red" }
颜色的值不是预期的,也没有记录.
我们应该忽略它还是拒绝BAD_REQUEST 400状态错误的请求?
我们可以断言请求是坏的,因为它不符合文档.可能API用户应该被警告(她传递了价值,她会期待一些东西.)
但我们也可以断言请求可以被接受,因为所有提供的参数都可以满足.