我正在开发一个RESTful API,该API具有一个创建实体的终结点。该端点通过POST调用,并以201和正文中的字段作为响应。
我看到Retrofit将201响应解释为失败并调用了failure()方法。一种解决方案是将响应代码更改为200,但是有人知道为什么这样做吗?
谢谢
最佳答案
从documentation of the Callback class中,我们有:
失败(RetrofitError错误)
由于网络导致HTTP响应失败
失败,非2XX状态代码或意外异常。
也就是说,您的201代码状态应视为成功。
但是,您遇到的问题还有其他原因。从this answer中,您可以看到翻新会引发调用failure方法的异常。尝试查看您的gson解析器,即代表该服务预期响应的POJO类。
关于retrofit - RetroFit状态码201解释为错误,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29222961/