我正在使用 Rails 构建一个 API,它可以采用很多参数。理想情况下,如果用户意外地在请求中包含了一个额外的、不必要的参数,这不会使请求模棱两可,我想正常处理它。这显然使我无法简单地写作
ApiRequest.new(params)
因为如果 params 哈希中有任何额外内容,则会抛出 UnknownAttributeError 。是否有一种拒绝额外属性的简单方法,或者我必须编写一个方法来在创建新对象之前手动验证请求。此外,这是否会被视为 API 的不良做法,如果发生这种情况,我是否应该使用 HTTP 400 进行响应?
谢谢,汤姆