加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – Apipie干扰正确的错误代码

发布时间:2020-12-17 01:51:46 所属栏目:百科 来源:网络整理
导读:我似乎无法在Apipie的文档中找到这一点. 我准备好了这个RESTful api,我想我会用Apipie记录它.所有精细和花花公子,以及param验证都很好,但我似乎无法让它在验证失败时抛出正确的HTTP代码作为响应.例如,我有这个POST / users方法,显然在我的数据库中创建了一个
我似乎无法在Apipie的文档中找到这一点.

我准备好了这个RESTful api,我想我会用Apipie记录它.所有精细和花花公子,以及param验证都很好,但我似乎无法让它在验证失败时抛出正确的HTTP代码作为响应.例如,我有这个POST / users方法,显然在我的数据库中创建了一个用户.很好,对吧?好吧,如果出现问题,它会响应422 Unprocessable实体,那很好,但是如果我抛出那些没有通过apipie验证的参数,则会产生扼流圈并抛出一个老式的错误,这就像是

Failure/Error: post '/users.json',:user => d
Apipie::ParamInvalid:
  Invalid parameter 'email' value "": Must match regular expression /[a-zA-Z0-9-.]+@[a-zA-Z0-9-.]+.[a-z]{2,}/.
# ./spec/requests/usersapi_spec.rb:66:in `block (3 levels) in <top (required)>'

假设我对email参数进行了regexp验证.相反,我非常希望它能很好地响应(可能在json中,或者用空体),并将respose的代码设置为422.

有任何想法吗?

编辑:是的,我知道我可以禁用apipie的验证,否则就这样做……

解决方法

希望你已经找到了答案 – 但是如果有人想要禁用Apipie的验证 – 这就是它.

Apipie.configure do |config|
  config.validate = false
end

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读