2011-01-26 9 views
2

ここに私のシナリオです:私はiPhoneアプリを持っています(Monotouchで書かれていますが、デザインとは関係ない)消耗品があります。私はアプリがインストールされているときに25無料の消耗品を与える。ユーザーがアプリを削除して再インストールすると、今度は同じ25種類の無料の消耗品が得られます。私はこれを防ぐ方法が必要です。私はウェブサービスで何か助けが必要です

私はUDIDのリストを持つサーバー(私のウェブサイトのホスト?)にデータベースのアイデアを考え出しました。ユーザーのUDIDがデータベースにある場合(すなわち、既にアプリケーションをインストールしていることを意味します)、返品がアプリに返され、消耗品の数がゼロに設定されます。 UDIDがd/bにない場合は、追加され、応答がそのように表示されます(新しいアプリ)。

私はREST(よりシンプルな)とサーバー側のLinuxホストを使用することを考えています。私の質問は次のとおりです:

  1. これを行うには良い方法がありますか?
  2. サーバーで使用する言語は何ですか?
  3. sqlRESTはどうですか? (私にはうまく見えますが、上記のシナリオではうまくいくでしょうか)
+0

ユーザーがデバイスをアップグレードまたは交換して新しいUDIDを取得するとどうなりますか? – Jason

+0

消耗品を新しい携帯電話に転送するには、私たちに連絡しなければならないでしょう...私は不正行為を心配しています(おそらく人口のごくわずかです)。私はまた、サーバー上に暗号化されたデータを格納する必要があるので、私もその新しいアプリケーションのWebサービスが必要な新しいアプリケーションがあります。 – SpokaneDude

答えて

1

私の選択する言語は、ASP.NET/C#とSQL Server DBの組み合わせです。私は私のウェブサイトを1ヶ月あたり数ドルでこの組み合わせを提供しているホスティング業者で稼働させています。

ウェブサービスは必要ありません。サーバー上にASPXページをセットアップし、NSString.FromUrl(またはそのメソッドが呼び出されたもの)を使用して呼び出すことができます: "mycounter.aspx?udid = 1234"ページが呼び出されるたびに、渡されたデバイスIDの数が増え、残りのリクエスト数だけ出力されます。 クライアントは整数に対する応答を解析し、ゼロの場合はその旨をユーザーに通知します。

悪意のあるKrumelurがあなたのURLに移動してランダムなデバイスIDを呼び出すことがないように、ハッシュをいくつか追加して、それらを使用できなくする必要があります。 :-)

ルネ

0

本当に答えはあなたのウェブホストによって異なります。そして彼らが何をサポートしているのか。おそらくあなたの取引量などに依存します。

あなたはMonotouchを使用しているので、私はあなたが.net/c#worldで快適であると仮定するつもりです。

私は、C#で書かれたWCF Webサービスを見ていきます。これは、ストレージ用にSQLサーバーを使用します。もちろん、SQLサーバーストアドプロシージャにまっすぐに進むことができます。

sqlRESTは面白そうですが、一見すると、Appache + Tomcatスタックを動作させる必要があるように見えます。

私は他のポスターと同意します。ASP.NET + SQLサーバーでもそれが完了します。