GETメソッドが冪等であり、POSTがそうでない方法。私たちはそれを2回提出すれば、フォームデータの再提出をフォーム提出に使用しています。そして、なぜ、それが冪等であるときなど、商品の発注や購入にGETを使用しないのですか?GETメソッドが冪等である方法
答えて
等価HTTPメソッドは、異なる結果を何度も出すことができるHTTPメソッドです。メソッドが1回だけ呼び出されるか、10回以上呼び出されるかは関係ありません。結果は同じでなければなりません。この場合も、結果はリソース自体には適用されません。
a=10; //This is idempotent: no matter how many times we execute this statement, a will always be 4.
a++; //This is not idempotent. Executing this 10 times will result in a different outcome as when running 5 times.
あなたの質問にお答えください。
GETメソッドを使用して商品を注文/購入する場合、商品が在庫切れになっても注文は行われます。対照的に、to POSTメソッドを使用すると、製品の購入のための新しいリクエストごとに結果が異なります。例以下は
があるため、すべての新規リクエストの結果がGETメソッドは、URLでサーバにブラウザから情報を送信するために使用されなければならない
https://accounts.google.com/Login#identifier
異なるものになるべき等されていません。以下は、GETメソッドの使用例です。以下は
http://www.google.co.in/search?q=cristiano+ronaldo
コメントでクエリへの答えです:
ユーザーがフォームの送信に起因するページを再訪すると、彼らは彼らの履歴スタックからページが表示される場合があります(これは、彼らがおそらく意図していたかもしれない)、またはページが現在期限切れになったと聞かれるかもしれない。後者に対する典型的なユーザーの応答はReloadを押すことです。
リクエストが冪等であれば無害です。これは、フォーム作成者がGETメソッドを指定してブラウザに通知するものです。
ブラウザは、POST要求を再提出しようとしている場合、これがさらに "宇宙の状態に永続的な変化"を引き起こすと考えている(実際にはそうだ)。彼らのクレジットカードや他のメルセデス・ベンツに注文すること。ユーザーが無害な冪等のリクエストをリロードしようとしたときにこのようなことに慣れてしまった場合、遅かれ早かれ、リクエストをしっかりと[OK]したときに、それを噛んでしまいます。
GETとPOSTの2つのメソッドを実装する際、開発者はセキュリティの問題を考慮して、特定のメソッドでコードを記述する必要があります。 GETメソッド(URLのサイズなど)のすべての制限を考慮して、両方のメソッドにコードを書くことができますが、これは良い方法ではありません。
GET - >情報検索用(状態を変更せずにデータを読み取る場合)
POST - 情報の作成/更新/削除用。
- 1. 定義冪等
- 2. 非冪等のリクエストにGETを使用する
- 3. 入れて、冪等
- 4. シェフのグループリソースが冪等でない
- 5. javaクライアントサーバーの実装における冪等/非冪等の操作
- 6. バグのシェルプロビジョニングスクリプトは冪等であるかOTOですか?
- 7. 角度の非冪等のメソッドの問題
- 8. Pythonでgetメソッドをテストする方法
- 9. Javaでsetメソッドとgetメソッドに問題がある
- 10. getメソッドにIDを送る方法
- 11. AWSスポットインスタンス要求の冪等性の実装
- 12. メソッドがGETのときにフォームデータを取得する方法
- 13. GETがRestFulでGETがPOSTとして動作するときにGETメソッドとPOSTメソッドが必要な理由
- 14. WebApiで複数のGetメソッドを実装する方法
- 15. APIゲートウェイをGETメソッドでラムダと統合する方法
- 16. IDisposable.Dispose()の実装は冪等でなければなりませんか?
- 17. あるクラスファイルから別のクラスファイルにset/getメソッドを呼び出す方法は?
- 18. OffsetDateTime私は以下<code>GET</code> REST方法有するGETメソッド
- 19. 他のURLのGETメソッドGETメソッド
- 20. PHP - POSTとGETメソッドが同じページにある
- 21. HTTPリクエスト:LinuxのGETでGETを実行する方法はありますか?
- 22. xdrでgetメソッドを使用してデータを渡す方法
- 23. Web APIで複数のgetメソッドを呼び出す方法
- 24. Cassandraは非冪等の操作のヒントを作成しますか?
- 25. C#Indexerプロパティ - getメソッドとsetメソッドを仮想化する方法はありますか?
- 26. jqueryの$ .getメソッドへの動的パスを与える方法
- 27. getとsetメソッドを定義する方法
- 28. wcf getメソッド - ビューモデルにバインドする方法は?
- 29. REST GETメソッドを保護する方法は?
- 30. GETメソッドからindex.phpと変数を削除する方法
GETメソッドでは、更新を2回行うか、戻るボタンをクリックして再度送信ボタンをクリックします。それは2回か1回だけ置かれますか? – Dhivakar
これを最初にお試しください。 –
私は試みましたが、私は正確な解決策を得ることができませんでした。あなたが気にしていない場合は、偶数を反映するGETとPOSTの例を与えることができます – Dhivakar