我之前问过类似的问题,但从未得到答案,这是一个简短的版本
我有一个用户活动资源模型。我在我的客户上对服务进行了简单的调用
response = User.find(id).put(:activate, :activation_code => activation_code)
如果服务出现错误(即activation_code 不匹配),我会返回
render :xml => @user.errors, :status => :unprocessable_entity
所以显然任何带有activeresource的错误响应都必须由resue处理
rescue ActiveResource::ResourceInvalid
这一切都很好,很花哨,只是初始调用中的响应没有设置。我根本没有该响应的正文,因此永远不会返回@user.errors。我需要什么才能取回正确的对象?除了返回 200。任何“成功”响应代码都会很好地填充响应变量。但总是返回 200 似乎是一个错误。