我正在创建一个iOS应用程序,我需要通过Web服务连接到数据库.我只知道使用RESTful Web服务的基本知识,我之前从未编写过自己的知识,并且想知道您是否可以就如何编写自己的RESTful Web服务向我提出任何建议.
在我的iOS程序中,我将向Web服务发送一个部件号,然后Web服务将需要返回部件上的颜色和大小信息.我不确定XML是最好的格式还是有更好的东西?
我想我的问题在这里是双重的:
这是我应该使用RESTful Web服务吗?
我在哪里可以找到有关创建基于.NET的RESTful Web服务的教程?
albertjan.. 6
您可以使用WCF创建RESTful服务,您可以使用Nancy:
我建议使用json作为数据格式,请参阅这里的一些优秀链接:iPhone/iOS JSON解析教程
在wcf中你要创建一个这样的服务:在这里看一个合理的例子:http://blogs.msdn.com/b/kaevans/archive/2008/04/03/creating-restful-services-using- wcf.aspx
[ServiceContract] public interface IServeStuff { [OperationContract] [WebGet(UriTemplate = "/stuff/{id}", ResponseFormat = WebMessageFormat.Json)] Stuff GetStuff(string id); } public class StuffService : IServeStuff { public Stuff GetStuff(string id) { return new Stuff(id); } }
或者与nancy http://www.nancyfx.org/这样:
public MyModule : NancyModule { public MyModule() { Get["/stuff/{id}"] = parameters => { return new Stuff(parameters.id).AsJson(); }; } }
但在此之前,请听@PeterKelly,因为他是对的
您可以使用WCF创建RESTful服务,您可以使用Nancy:
我建议使用json作为数据格式,请参阅这里的一些优秀链接:iPhone/iOS JSON解析教程
在wcf中你要创建一个这样的服务:在这里看一个合理的例子:http://blogs.msdn.com/b/kaevans/archive/2008/04/03/creating-restful-services-using- wcf.aspx
[ServiceContract] public interface IServeStuff { [OperationContract] [WebGet(UriTemplate = "/stuff/{id}", ResponseFormat = WebMessageFormat.Json)] Stuff GetStuff(string id); } public class StuffService : IServeStuff { public Stuff GetStuff(string id) { return new Stuff(id); } }
或者与nancy http://www.nancyfx.org/这样:
public MyModule : NancyModule { public MyModule() { Get["/stuff/{id}"] = parameters => { return new Stuff(parameters.id).AsJson(); }; } }
但在此之前,请听@PeterKelly,因为他是对的
我的建议是使用ASP.NET MVC3实现这一点- 因为这提供了一个很好的控制器 - 动作范例,非常适合实现REST服务.你可以使用WCF,我相信它会正常工作,但从个人经验来看,我发现MVC3很容易用来为iOS客户端编写REST后端.
我建议使用JSON而不是XML,主要是因为它比XML更简洁,但是如果您稍后决定为数据库实现Web前端,它还有其他优点,因为Javascript对JSON有很好的支持.
iOS有许多JSON库,包括SBJSON和YAJL
还有一个备受推崇的iOS REST实现框架名为RestKit.
至于使用MVC famework实现REST的教程,可能需要关注一下.