0

在我的 Cappuccino 前端中,我使用Ratatosk对基于 RESTful JSON 的 API 进行查询。

当我创建一个新资源时

[myNewResource ensureCreated];

我的后端返回状态代码 201 和带有新创建资源的 URI 的 Location 标头。响应正文为空。据我所知,这就是 REST API 应该对成功的 POST 请求做出反应的方式。

但在收到回复后,Ratatosk 致电

- (void)connection:(CPURLConnection)aConnection didReceiveData:(CPString)data

(在 WLRemoteLink.j 中)并尝试解码响应正文。这会引发错误,因为响应正文为空。结果,请求被无限重复。

我该怎么办?我应该在响应正文中返回整个资源吗?

编辑:

在响应中返回 ID 解决了问题,例如

{"id":1}
4

1 回答 1

0

如果响应为空,Ratatosk 期望状态码 204(无内容)。否则,它需要刚刚创建的资源的完整表示(它用于在本地填充服务器端动态属性,如 created_at)。

于 2013-11-04T16:56:37.420 回答