問題タブ [proxy-classes]

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.

0 投票する
3 に答える
5546 参照

ruby - ruby で Net::HTTP プロキシを使用してプロキシ経由で Web サイトにアクセスする

Net::HTTP::Proxy を使用して QA 環境の Web サイトにアクセスして応答を取得しようとしていますが、接続しようとすると常に SocketError が発生します。使用しようとしているコード スニペットを見つけてください。

これは私が得ているエラーです

ブラウザの自動プロキシ設定を構成することで、Selenium を使用して同じ Web サイトにアクセスできます。しかし、Net::HTTP を介して応答を取得する必要があります。他にやり方があれば教えてください。

0 投票する
1 に答える
706 参照

python - Pythonでプロキシパターンを使用する場合、プロキシクラスはどのようにして呼び出し元オブジェクトの状態にアクセスできますか?

次のコードでは、Graph()はVertexとEdgeのプロキシとして機能しています。クライアントはGraph()を介してのみVertexとEdgeにアクセスします。

VertexとEdgeにパラメータとして渡すことなく、VertexとEdgeがリソースオブジェクトにアクセスするための最良の方法は何ですか?

これをパラメータとして渡したくない理由の1つは、VertexとEdgeに、リソースオブジェクトにもアクセスする必要があるcreate()などのクラスメソッドがあるためです。

Flask / Werkzeugは「コンテキストローカル」(http://werkzeug.pocoo.org/docs/local/)を使用しています-これはここでの正しいアプローチですか、それともより良い方法がありますか?

0 投票する
2 に答える
1095 参照

c# - Castle Dynamic Proxy が Object.GetType() をインターセプトしようとしている

プロジェクトでは、Castle Dynamic Proxy を使用して、ファサードによって実行されるすべてのコードを try/catch ブロックでラップしています (奇妙に聞こえますか?ここで説明されています)。これは問題なく動作しますが、すべてのメソッド呼び出しが確実にインターセプトされるようにするために、インターフェイスのNonProxyableMemberNotificationメソッドを使用して、仮想以外のものに遭遇したときに例外をスローします。IProxyGenerationHook

Krzysztof Koźmic のすばらしいチュートリアルによると、オブジェクト クラスは特殊なケースであり、デフォルトでは DynamicProxy はそれらを無視します。私の場合、次のサンプルMemberInfoデータからわかるように、問題は無視されません。

memberInfoクイックウォッチ

ここで見逃したものはありますか?NonProxyableMemberNotificationオブジェクトメソッドで起動するはずですか?

私は .Net 3.5、VS2010、Castle Core バージョン 2.5.2 を使用していObject.GetType()ますXmlDocumentBackend

0 投票する
3 に答える
13618 参照

c# - ASP.NET Web API サービスへのサービス参照を追加する

Web API サービスのいくつかのルートをホストする MVC ソリューションがあります。場合によっては、単純な HTTP get を使用して JavaScript からこれらを呼び出します。他の例では、何らかの .NET コード、おそらく別の MVC アプリケーションからそれらを呼び出したいと考えています。

これらの Web API エンドポイントにサービス参照を追加し、典型的な WCF サービスの場合と同様に、ツールでプロキシ クライアントと CLR 型を作成する方法はありますか? ここにSOAPが含まれていないことは知っていますが、それが可能であることを読みました。方法ではありません。

0 投票する
1 に答える
9839 参照

c# - プロキシクラスなしでデータベースからロードしますか?

Entity Framework 4の場合プロキシクラスを使用せずに、いくつかのクエリをPOCOにロードすることを選択できますか?(将来の読み取り専用使用のためにそのオブジェクトをキャッシュする目的で)。リポジトリ-サービスパターンを使用しています。

これはつまり:

私が欲しいのは、そのタイプのプロキシではなく、order.Customer実際にPOCOタイプを使用することです。MyApp.Models.Entities.Customer

編集:「GetUnproxied」メソッドをリポジトリに追加するというLadislavの提案に基づいて、私はこの変更を行いました。

これは正しいです?

それは私にはスレッドセーフに見えません。どちらのメソッドも同じObjectContextインスタンスを使用するため、ProxyCreationEnabled == falseあるスレッドで発生してからpublic IQueryable<T> GetQuery()別のスレッドで呼び出される可能性があります。これは、プロキシメソッドがプロキシされていないオブジェクトを返す可能性があることを突然意味します。

0 投票する
4 に答える
3803 参照

c# - プロキシ クラスはクラス ラッパーと同じですか?

「汎用」テーブルを含むレガシー データベースにアクセスする必要がありますが、それを変更する権限がありません。扱っている顧客データによっては、テーブル間の関係が異なる場合があります。したがって、customerA は顧客番号のみで注文テーブルに参加でき、CustomerB は顧客番号と日付で注文テーブルに参加できます。CustomerC は order テーブルにまったく参加せず、別のテーブルに参加する場合があります。

そこで、CustomerA 用に 1 つ、CustomerB 用に 1 つ、CustomerC 用に 1 つのオブジェクト グラフを作成したいと考えています。それぞれのラッパークラスを作成することを考えましたが、プロキシを研究しています。そうは言っても、プロキシ クラスについて書かれた例を見ると、それらはラッパー クラスと同じように見えます。したがって、私の質問は、ラッパー クラスと同義のプロキシ クラスです。

ありがとうございました。

0 投票する
1 に答える
1001 参照

.net - Webサービスプロキシクラスの拡張

Webサービス呼び出しに機能を追加して、オブジェクトの変換と自動再試行が実行され、抽象化されるようにする必要があります。

通常、基本クラスをオーバーライドして機能を追加しますが、プロキシメソッドはオーバーライドできないため、メソッド名を同じに保つことはできません。この方法でそれを行うために私が考えることができる他の唯一のオプションは、「Shadows」キーワードを使用して私が望むことを達成することです。シャドウのアイデアは特にOOPではないので、今は好きではありませんが、この場合、それはきちんとした解決策になるようです。

生成されたクラスを変更せずにWebサービスプロキシクラスに機能を追加するために、他にどのようなメソッドを使用しますか?

0 投票する
1 に答える
598 参照

wcf - SiteMinderで保護されたサイトでのWCFメタデータの公開

これは本当にばかげた質問かもしれませんが、私は解決策を見つけることができませんでした。SiteMinder認証を使用するサイトでホストされているWCFサービスがあります。認証はクライアントリクエストのCookieに依存しています。問題は、svcutilを使用してプロキシクラスを生成しようとすると、svcutillがメタデータを取得しようとしたときに、SiteMinder Cookieがリクエストに追加されないため、操作が失敗することです。したがって、プログラムでWCFサービスプロキシクラスを生成する簡単な方法があるかどうか疑問に思いました。

0 投票する
2 に答える
581 参照

nhibernate - WebサービスでNhibernateレイジープロキシを使用する

最近、少し前に書いたSOAPWebサービスでパフォーマンスの問題が発生しました。たくさんのクエリが実行されていて、hbm.xmlマッピングがlazy=falseステートメントでいっぱいになっていることに気づきました。NHibernate 3.0にアップグレードし、lazy = falseのものを削除しましたが、すべてがはるかに高速でした....しかし、次のエラーが発生します。

System.InvalidOperationException:XMLドキュメントの生成中にエラーが発生しました。---> System.InvalidOperationException:タイプUserProxyが予期されていませんでした。XmlIncludeまたはSoapInclude属性を使用して、静的に認識されていないタイプを指定します。

Userは、次のようにクラスタグからlazy=falseプロパティを削除したクラスです。

私のWebサービスには次のような方法があります(少し簡略化されています。実際には、サービスとnhibernateの間にリポジトリのようなパターンを使用しています)。

Webサービスはユーザーをシリアル化することを期待しており、NHibernateはUserProxy(正確にはユーザーではありません)を提供します。これをどのように克服する必要がありますか?

0 投票する
1 に答える
362 参照

java - 実行時の Java オブジェクトの拡張

プロキシ対応ライブラリ (javassist、JDK 動的プロキシなど) を使用すると、実行時にインターフェイスを実装するようにクラスを拡張できることを認識しています。

私の質問は次のとおりです。インスタンス化されたオブジェクトを拡張して、実行時にインターフェイスを実装することは可能ですか (同様に、適切なメソッド ハンドラーを提供します)。