wireload / Ratatosk:如何发出POST请求?

时间:2013-10-17 11:01:03

标签: cappuccino

在我的Cappuccino前端,我正在使用Ratatosk来查询基于RESTful JSON的API。

当我使用

创建新资源时
[myNewResource ensureCreated];

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

但是在收到回复后,拉塔托斯克打电话给

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

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

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

修改

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

{"id":1}

1 个答案:

答案 0 :(得分:0)

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