我需要一些Web服务方面的帮助

时间:2011-01-26 17:36:51

标签: web-services xamarin.ios webservices-client

这是我的场景:我有一个iPhone应用程序(用Monotouch编写,但与设计无关)有耗材。安装应用程序后,我会提供25个免费消耗品。如果用户删除应用程序并重新安装它,他现在获得相同的25个免费消耗品。我需要一种方法来阻止这种情况。

所以我想出了一个服务器上的数据库(我的网站主机?),它有一个UDID列表。如果用户的UDID在数据库中(这意味着他已经安装了应用程序),则会将响应发送回应用程序以将耗材计数设置为零。如果UDID不在d / b中,则会添加它并显示响应(新应用程序)。

我正在考虑使用REST(更简单)和服务器端的Linux主机。我的问题是:

  1. 有更好的方法吗?
  2. 服务器上的首选语言是什么?
  3. sqlREST怎么样? (看起来对我很好,但它会在上面的场景中起作用吗?)

2 个答案:

答案 0 :(得分:1)

好吧,我可以告诉你我选择的语言是什么:ASP.NET / C#与SQL Server DB结合使用。我的网站在一个托管服务器上运行,每月只需几块钱就能提供这种组合。

您甚至不需要webservices。您可以在服务器上设置一个ASPX页面并使用NSString.FromUrl(或调用任何方法)调用它:“mycounter.aspx?udid = 1234”。每次调用页面时,它都会增加传入的设备ID的数量,它唯一输出的是剩余请求的数量。 您的客户端将该响应解析为整数,如果为零,则通知用户。

你应该合适地添加一些哈希来确保邪恶的Krumelur不会转到你的URL并将其称为随机设备ID,使它们无法使用。 : - )

答案 1 :(得分:0)

答案实际上取决于您的网站托管服务商。他们支持什么。这可能取决于您的交易量等。

由于您使用的是Monotouch,我会假设您对.net / c#world感到满意。

我会看一下用c#编写的WCF Web服务。这反过来会使用SQL服务器进行存储。当然,你可以直接进入SQL服务器存储过程。

sqlREST看起来很有趣,但一眼就看起来你需要运行Appache + Tomcat堆栈才能工作。

如果你只想要尽可能低的条件让它工作,那么我同意另一张海报...... ASP.NET + SQL服务器也会完成它。

相关问题