cappuccino - 线载/拉塔托斯克 : How to make POST requests?

标签 cappuccino

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

当我创建一个新资源时

[myNewResource ensureCreated];

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

但在收到回复后,Ratatosk 调用
- (void)connection:(CPURLConnection)aConnection didReceiveData:(CPString)data

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

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

编辑:

在响应中返回 ID 解决了问题,例如
{"id":1}

最佳答案

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

关于cappuccino - 线载/拉塔托斯克 : How to make POST requests?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19424877/

相关文章:

objective-c - 调整CPScrollView的内容大小

javascript - 我如何将 Node.js 与 Cappuccino 一起使用?

javascript - 如何比较 Cappuccino 中的两个对象是否相等

user-interface - 使用Xcode 4添加 Cappuccino CPProgressIndicator

php - 在 PHP 后端使用 Cappuccino JS 框架

javascript - 可以在本地javascript对象上使用CPPredicates吗?

ajax - Cappuccino 、Django、AJAX 并将它们组合在一起 - 回顾我的架构!

javascript - 使用 Ajax 直播 'push'

python - 如何在node.js中使用python脚本

cappuccino - 如何在 Cappuccino 中制作自定义可编辑表格列