-1
私が知っている限り、putは冪等元です。つまり、このメソッドを複数回適用することは、それを1回適用するのと同じです。以下のコードを考えてみてください:Asp Net Web Apiでputメソッドが常に冪等ではないのはなぜですか?
public class ValuesController : ApiController
{
private static List<string> _list = new List<string>();
public void Put([FromBody]string value)
{
_list.Add(value);
}
}
明らかにあなたが方法がここに冪等であり、かつ複数回_list
た複数の値になります、それを適用していないに言えば、この例から見ることができるように。また、同様の方法でgetやdeleteなどの他の冪等のメソッドを実装することもできます。どのようにしてメソッドを置くのは常にidempotentですか?
であるはずですが、それはHTTP/RESTfulのセマンティクスに過ぎません。あなたが冪等ではない実装を書くと、そうではありません。同様に、あなたの書き込みを止めることはありません。あなたがそれをしたいのであれば、実際にデータを削除するGET。 – jonrsharpe
プログラマは、それらが等冪であることを確認する責任があります。 IDEが非常にスマートだった場合、コードを独自に書くことができ、私たちはすべて失業者になります:) – sashoalm