从单页应用程序调用Web API端点的最佳实践

时间:2013-03-23 01:30:55

标签: web-applications asp.net-mvc-4 knockout.js single-page-application

我已经建立了我的webApi,现在我正在将前端与淘汰赛放在一起。这可能是一个愚蠢的问题,但我有点新手,并希望确保我正确的思考。

假设您有一个包含列表中项目的todoList。您让用户将一个项添加到列表中 - 模型在javascript viewModel中更新它的“itemToAdd”数组。当用户单击“保存”时,项目数组立即在客户端更新。这是对PUT / api / item的调用是否恰当的点?如果是这样,如果PUT失败,那么“行为标准”是什么?将该项目从todolist viewModel中取出并显示错误?

2 个答案:

答案 0 :(得分:2)

取决于您希望用户体验的方式。

您可以在单击保存按钮时将新项目添加到客户端上的列表中。但是展示一个微调器,让用户知道你想要保存。服务器返回的任何错误消息都可以显示给用户。如果保存成功,则将它们添加到列表中。

或者,您可以在单击“保存”按钮后立即将它们添加到列表中,并让用户知道显示的内容尚未保存,并且需要将更改同步回服务器。然后在选择时将所有更改发送到服务器。

答案 1 :(得分:0)

这取决于。

你可以这样做,首先保存然后显示或反过来(如果失败则撤消)。

但我认为首先保存更简单,因为如果失败则不必考虑撤消它。

看看大本营,看看他们是如何做到的。如果这对你有用,那就按照同样的方式做。