在哪里将 Web 服务定义为异步?
我正在开发一个 iOS 项目,这几天我问了自己一个问题。 我的问题很简单:我有同步的 Web 服务调用。但我想做异步调用。但我不知道在哪里定义事实调用应该是异步的。
这是我的代码的工作原理: - 我有一个控制器(大多数 时间,一个UITableViewController) 控制器调用 DataAccess 获取数据的一些参数 - DataAccess 调用 Web 服务 使用给定的参数,变换 将结果放入包含以下内容的 NSArray 中 模型对象,并将结果返回给 控制器
应该是控制器还是 DataAccess 定义我的调用将是异步的?
感谢您的帮助;)
I'm working on a iOS project and I'm asking myself a question for a couple of days.
My problem is simple: I have webservice calls which are synchronous. But I would like to do asynchronous calls. But I don't know where to define the fact calls should be asynchronous.
Here is how my code works:
- I have a controller (most of the
time, a UITableViewController) The
controller calls a DataAccess with
some arguments to get data
- DataAccess calls a webservice
using given arguments, transform
result into an NSArray containing
Model object, and return result to
the controller
Should it be the controller or the DataAccess which defines that my call will be asynchronous?
Thanks for the help ;)
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
取决于您与网络服务的通信方式。我的公司为此开发了一个 REST 实现(比用于 iOS 的 SOAP 更容易),并使用 asihttprequest 进行异步调用。 Asihttprequest 被许多应用程序使用,并且在我看来非常好。此外,对于以数据为中心的应用程序,我们选择将调用放在模型层而不是控制器中。
Depends on how your communicating with your web service. My company developed a REST implementation for this purpose (easier than SOAP for iOS purposes), and use asihttprequest to do the async calls. Asihttprequest is used by many apps and very good imo. Also, for data centric apps, we chose to put the calls in the model layer rather than the controllers.
ASIHTTPRequest。它是一个第三方库,包装并极大地简化了 HTTP 客户端工作。
在我看来,您似乎还不熟悉委托模式。这是使用 Cocoa 的关键部分,所以要学习它。
ASIHTTPRequest. It's a third-party library that wraps and VASTLY simplifies HTTP client work.
It sounds to me like you're not hip to the delegate pattern yet. It's a critical part of working with Cocoa, so learn it up.