問題タブ [idempotent]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
post - POST パラメーターを渡します - URL はありません。彼らは正確にはどこにいますか?
温度と湿度の読み取り値を取得する単純な Web アプライアンスを設計しています。それらをリモート サーバーに投稿し、MySQL データ テーブルに追加したいと考えています。
冪等性の問題があるため、GET はこれを行うには間違った方法であることを理解しています。しかし、URL を作成してページを呼び出すことができない場合、POST でこれを行うための構文またはメソッドは何ですか?
私はクライアント側でかなり低いレベルで作業しています-イーサネットライブラリを備えたマイクロプロセッサです。これには client.open() インターフェイスがあり、開いているクライアント接続に「print」ステートメントを送信できます。
サーバーが投稿と一連の引数を受け取るために何を見るべきか知っている人はいますか?
K
web-services - べき等の定義
したがって、「べき等」は次のように定義できます。
N回実行すると、アクションを1回だけ実行するのと同じ効果を持つアクション。
了解しました。簡単です。
私の質問は、この定義の微妙さについてです-アクションはそれ自体がべき等であると見なされますか、それともアクションに渡されるデータも考慮する必要がありますか?
例を挙げて明確にしましょう。
リソースを更新するPUTメソッドがあるとすると、それを呼び出します。f(x)
明らかにf(3)
、入力として3を指定する限り、べき等です。また、同様に明らかなf(5)
ことですが、リソースの値が変更されます(つまり、3または以前に存在していた値ではなくなります)
したがって、べき等について話すとき、私たちは(すなわちf(x)
)のようなアクション/関数の一般化を指しているのでしょうか、それともアクション/関数+それに渡されるデータ(すなわち)を指しているのf(3)
でしょうか?
c# - IDisposable.Dispose()の実装はべき等である必要がありますか?
Microsoft.NET Frameworkは、メソッドIDisposable
の実装を必要とするインターフェイスを提供しますvoid Dispose()
。IDisposable
その目的は、実装が割り当てた可能性のある高価なリソースの手動またはスコープベースのリリースを可能にすることです。例には、データベースコレクション、ストリーム、ハンドルが含まれます。
私の質問は、Dispose()
メソッドの実装がべき等である必要があるかどうかです。同じインスタンスで複数回呼び出された場合、インスタンスは1回だけ「破棄」され、後続の呼び出しは例外をスローしません。Javaでは、同様の動作をするオブジェクトのほとんど(ここでもストリームとデータベース接続が例として思い浮かびます)は、そのclose()
操作に対してべき等であり、これはたまたまDispose()
メソッドの類似物です。
ただし、.NET(および特にWindowsフォーム)に関する私の個人的な経験では、すべての実装(.NET Framework自体の一部)がべき等であるとは限らないため、これらを呼び出すと、がスローされObjectDisposedException
ます。これは、使い捨てオブジェクトの実装にどのようにアプローチすべきかについて私を本当に混乱させます。シナリオに対する一般的な答えはありますか、それともオブジェクトの具体的なコンテキストとその使用法に依存していますか?
java - 関数を「冪等」と呼ぶ前に、関数が従わなければならない正確な規則は何ですか?
別のスレッドからの投稿によると、結果を変更せずに複数回呼び出すことができる場合、関数はべき等であると言われています。
ただし、使用されている用語 (副作用なしや同じ結果を返すなど) は比較的あいまいです。次のコードを検討してください。
F()
を連続して呼び出すとF()
同じ値が返されるため、これはべき等であると言えますか?
または、 が途中で呼び出された場合、を連続して呼び出すと同じ値が返されないため、べき等ではありませんか?F()
F2()
PS:数学ではなく、コンピュータ サイエンスで定義されている「冪等性」。
ruby-on-rails - String#pluralize は冪等ですか?
つまり、任意の Stringstring
について、次のことが成り立ちますか?
web-services - REST Web サービスのクライアント側 ID 生成戦略
次のようなメモを作成するための REST サービスを構築したいとします。
私は自分のサービスを不等にしたいので、PUT を使用してメモを作成および更新しています。これは、新しいメモの ID がクライアントによって設定/生成されることを意味します。
GUID/UUID を使用することを考えましたが、かなり長く、URL を覚えるのがかなり難しくなります。データベースの観点からも、このような長い文字列 ID は、大きなテーブルで主キーとして使用されると、パフォーマンスの観点から問題になる可能性があります。
短いIDを生成し、もちろん衝突を回避する優れたID生成戦略を知っていますか?
ajax - ajaxリクエストに対してpost-redirect-getを行う必要がありますか?
ajax リクエストを介してのみ発生することがわかっているリクエストに post-redirect-get (prg) を使用する理由はありますか?
このシナリオでは、(ajax または直接のいずれかを介して) 送信される要求がある可能性があり、バックエンドでどれがどれであるかを区別できると想定しています。直接リクエストが prg を使用して処理される場合、prg でajaxリクエストも処理する理由はありますか?
または、ajax の投稿に直接返信することはできますか?
sql - SQL 冪等性
私の SQL データベース プロジェクトには、データベースの一部である必要がある既定値を登録する配置後スクリプトがあります。結果を変更せずにこのスクリプトを複数回実行できるようにしたいので、少し変更を加える必要がある場合は手動で実行できます。
このスクリプトはロールと権限を挿入するだけなので、パフォーマンスが問題になるとは思えません。では、各行が存在するかどうかを確認し、まだテーブルにない行のみを挿入する最もクリーンな方法は何でしょうか?
jmx - camel の ftp jpa べき等リポジトリの登録エラー
ここhttp://camel.apache.org/file2.htmlで説明されているように、jpaべき等リポジトリを実装しようとしていますが、Mbeanエクスポートエラーが発生しています。
私のapplication-context.xmlには、次のセクションがあります。
上記のセクションを削除すると、サーバー (tomcat) は問題なく起動します。誰でもこれについて私を助けることができますか?
スタックは次のとおりです。
javascript - jQueryの`bind`または`on`イベントハンドラーをべき等にする方法
$(selector).bind('click', handler)
ハンドラーが1回だけ接続されるように、または$(selector).on('click', handler)
複数回 呼び出すことができる方法はありますか?
現在、成功コールバックが異なる複数のAJAXハンドラーがあり、それぞれがページ上の異なる要素のセットを再レンダリングします。理想的には、「イベントの再アタッチ」ルーチンを、すべてのルーチンではなく、単一の関数にリファクタリングしたいと思います。
今これを行うために私が考えることができる唯一の方法は、明示的にバインドを解除することです。たとえば、次のようになります。
そのようなことを自動的に行う方法を探しています。