1

ユーザーがさまざまな種類のイベントをサーバーに投稿し、すべてのユーザーから作成されたイベントを表示できる iOS アプリケーションを開発しています。私が持っている質問には、プログラミングの性質がありません。ここでは、サーバー データベースをどのように設計するかを示し、それについての意見と改善方法を教えてください。

このアプリケーションは非常にシンプルなインターフェイスを備えており、ユーザーはイベントを投稿したいときに、タイトルとコメントを書き、必要に応じて写真を添付するだけです。次に、この情報が XML 経由でサーバーに送信され、データベースに保存されます。

問題は、一部の人々が未熟であるため、不適切な言葉や写真を投稿しようとすることです. そのため、ユーザーをある程度制御したいと考えています。私が考えているのは、アプリケーションが携帯電話で実行されてサーバーに接続された最初の時点で、サーバーはユーザー ID を電話に送り返すということです。次に、ユーザーが xml ファイルを送信するたびに、ユーザー ID を xml に添付します (プログラムによって添付されます)。また、時間をかけて作成されたすべてのユーザー ID を含む別のデータベースを保持します。したがって、不適切なイベントに気付いた場合は、データベースからユーザー ID を削除できます。次にユーザーが何かを送信しようとすると、サーバーはこの ID がデータベースにないことを認識し、投稿を許可しません。

未熟な行動を防ぐためのより簡単な方法でしょうか、それともこれでよろしいでしょうか?

4

3 に答える 3

1

確かにあなたが説明したことは可能です。しかし、これには 1 つの大きな問題があります。そのインターフェースは、ロボット (スクリプト) で簡単に使用できます。したがって、誰かが本当にあなたのサービスを悪用したい場合、彼はすぐに好きなものであなたをあふれさせることができます. または、サービスから彼の投稿を削除することをあきらめなければならないまで、彼は何度も何度も試すことができます.

代わりに、既存のフレームワークのいずれかを検討することをお勧めします。このようにして、車輪を再発明する必要はなく (すでに 19562394792 回行われ、数えられています)、間違いから学ぶ必要もありません (間違いなく間違いなく犯します)。

于 2013-01-18T00:33:03.800 に答える
1

画像を認識して適切かどうかを判断するのは簡単ではないため、これは画像を使用した唯一の実行可能なソリューションです。彼らが投稿したコメントは、不適切なアイテムがないかスキャンされやすくなります。

この種のモデレーションを行う意志がある場合、あなたのソリューションは適切なもののように思えます。あなたが言ったように、他のオープンシステムと同様に、人々が新しいアカウントを作成するのを実際に止めることはできません. IP アドレスをログに記録して禁止することもできますが、ほとんどの IP アドレスは実際には共有ゲートウェイ アドレスである可能性があり、それらのアドレスはユーザー間で頻繁にローテーションされるため、これはあまり良い解決策ではありません。

ID を作成します。行動に注意してください。IDを禁止します。また、フラグ ボタンのようなものを使用して、不適切な投稿を警告するコミュニティへの参加を奨励します。

于 2013-01-18T00:33:28.637 に答える
1

データベースを設計するには、iOS アプリだけでなく、さまざまな方法があります。ただし、モバイル アプリ (iOS、Android、またはその他) を作成するときは、送受信されるデータの量をできるだけ少なくしたいと考えています。これが、XML の代わりに JSON を使用する理由です...フットプリントが小さいです。

私は JSON を使用しているので、MongoDB (私のお気に入り) や CouchDB などのオブジェクト データベースを使用するのが好きです。なぜなら、1) データの構造について心配する必要がなく、2) データベースはオブジェクトを JSON 形式で保存するからです。

次に、アプリケーション サーバーに Node.JS を使用するので、JSON データベース -> サーバー アプリケーション コード内の JSON オブジェクト -> JSON の出力... マッパーやシリアライゼーションが不要でシームレスです。ところで。

于 2013-01-18T00:34:57.697 に答える