私はクライアントからサーバーへ価値を得なければならず、その価値は非常に重要である(値は行動のタイムスタンプです)ので、置換の可能性を除外しなければなりません。偽の価値を送ることができますか、または心配する理由はありませんか?どうやってするの?slient-sideから本物の価値を得る方法
答えて
が偽の値に
を送信することが可能です違いを知っているだろうはい、そうです。オンラインマルチプレイヤーゲームでは、通常、サーバーにユーザー入力を送信する以外は、クライアントがゲームロジックに参加することを許可しません。
どうすればよいですか?
まだお望みなら、getTime()を使用できます。
2つの違いは12-50msでしたが、サーバーがスケジュールされたタスクを実行していたときの差は〜1000msでした。
これは遅延と呼ばれ、要求と要求の処理の間の遅延が処理され、結果が返されます。あなたはあなたのサーバーのパフォーマンスを操作する必要があります。私は実際に見ることはできません。クライアント側のタイムスタンプを生成するのがなぜこの場合あなたにとってより良いものになるのでしょうか?この時間が過ぎてもクライアントはあなたのサーバーから応答を受け取ります。
私が想像できる唯一のことは、ユーザーが自分の情報を別の情報チャネル(サーバー、スカイプ、おそらくsmthではない)から取得することです。他のすべてのケースでは、すべてのプレーヤーが同じレイテンシを取得すると、なぜあなたは気になるでしょうか?
P.S.:質問に文脈を与える必要があります。そうしないと、最終的な目標についてのみ推測できます。
私の質問は、偽の値を送信する可能性についてです。あなたが言及したように、クライアントはゲームロジックに参加することはできません。私が明確にしたい最後のこと: クライアントは彼のロジックの部分を注入できますか?だから、私は関数を作成することができます: ' function send(){ var a =" not_fake "; // request_body(文字列a)でリクエストを投稿 クライアントはrequest_body "fake"と書かれたリクエストをサーバーに送信できますか?それとも、完全に安全でハッキングできないのでしょうか? – Feeco
前にも述べましたが、クライアント側のデータは、jsスクリプトを自分自身で編集/置き換え、ブラウザからのプロキシ要求とそこでのデータの変更から始めて、さまざまな方法でユーザーが偽造することができます。この場合、完全に保護する方法はありません。それを "コードワイズに"保護しようとすると、 "ハッカー"があなたのアプリを逆転してデータを鍛造する時間が増えるだけです。 2番目のqに:受信したデータを適切に処理する(データ型の検証、SQLクエリで値を使用する前にスペックを削除するなど)場合、ユーザーは実際にサーバーロジックに介入できません。 – haldagan
明確にするために:>私の質問は、偽の価値を送る可能性についてです。回答は "はい、ユーザーは常に偽の値を送信することができます" – haldagan
私は、(それを格納します)要求をサーバーに送信する前にして使用して新しいタイムスタンプを生成するサーバーに到達した後javscriptで日付関数を使用して、現在の日付を取得します
タイムスタンプ(dateFormat.parse(strDate ).getTime())。toString();
今私は
- 1. Haskellの "価値"を得る方法
- 2. Infragisticsコンボの価値を得る方法
- 3. XSLからテキスト、 'fmt'の等価物
- 4. オブジェクトから長い価値を得る最も良い方法は?
- 5. c:foreach内の個々のコンポーネントの価値を得る方法?
- 6. MySQLの手順の中でENUMの価値を得る方法
- 7. 星をクリックすると評価値を取得する方法
- 8. Eclipseの価値を得る方法.classpath classpathentry
- 9. 価格帯スライダー(jquery)から値を読み取る方法
- 10. 2つのテーブルから選択して1つのテーブルから最高の価値を得る方法は?
- 11. AMAZONからASINと価格を取得する方法
- 12. Html:フォームからの入力の価値を得るには?
- 13. 別のアンドロイドアプリケーションから価値を得るには?
- 14. Pythonの関数から新しい価値を得るには?
- 15. デルファイセットから最高の価値を得るには?
- 16. URLから価値を引き出す方法は?
- 17. 基本クラスから派生クラス名を取得する方法
- 18. Goでimapサーバーから本文を取得する方法
- 19. HTTP基本認証からパスワードを取得する方法
- 20. XMLからlinqを使って価値を得る
- 21. <div>value</div>から価値を得るには?
- 22. 環境設定から価値を得るには?
- 23. 誰かがhaskellプログラムから別のhaskellプログラムへの価値を得る方法がない
- 24. JavaScriptで価値が得られない
- 25. インデックスによるコレクションからの価値を得るための最良の方法
- 26. カスタムメンバーシッププロバイダは、本当に価値のあるものですか?
- 27. リリースモードのプログラムからisapi dll物理パスを取得する方法
- 28. 本物のスマイリーの使い方は?
- 29. WindowsフォームクライアントからHTTPリクエストから値を取得する方法
- 30. ノックアウトからトータルカートの価値を計算する方法mvcカートのサンプル
なぜサーバー上の日付を手榴弾にしないのですか? – maleeb
このプロジェクトは、50msも重要なオンラインゲームです。クライアント上でタイムスタンプを作成しようとしましたが、サーバから(ローカルホスト上で)タイムスタンプを取得しようとしました。 2つの違いは12〜50msでしたが、サーバーがスケジュールされたタスクを実行していたときの差は〜1000msでした。私は他の要因が数を増やすと思いますが、私が以前に言ったように、50msさえも重要です。 – Feeco