0

nodejs のドキュメントにざっと目を通してみると、オプションオブジェクトが渡されてhttpライブラリ内の機能を構成していることがわかります。ただし、事後、オブジェクトを構築するために http.request(options, callback)呼び出しで使用された元のオプションにアクセスする簡単な方法はわかりません。元のオプションはリクエスト オブジェクトを介して利用でき、非公開とはみなされませんか、それとも後で使用する場合に備えて、元のオプションへの独自の参照を保持する必要がありますか?http.ClientRequest

オプションは http.ClientRequest オブジェクト内で合成されていると思いますが、それは間違っている可能性があります。

私はおそらくこれでどちらの方法でも試してみることができます(合成された情報を掘り下げるか、それへの外部参照を渡します)が、オプションオブジェクトが利用可能であり、ベスト プラクティスを使用することによって。

4

1 に答える 1

0

常に独自のリファレンスを保持する必要があります。ほとんどの場合、オブジェクトをコンストラクターに渡した後、そのオブジェクトに何が起こるかを知る方法がありません。ほとんどの人はそのままにしておきますが、一部のライブラリ/モジュールには副作用がある場合があります。たとえば、次のようなソース コードが表示される場合があります。

options.foo = options.foo || 'bar';

...オブジェクトを変更しています。したがって、オブジェクトへの参照を保持したい場合は、コンストラクターに渡す前にオブジェクトを複製する必要がある場合もあります。

特に、オプション オブジェクトへのパブリック参照は保持さClientRequestれませんが、req.pathや などのオプションの一部に一致するプロパティがありますreq.port

于 2012-08-10T12:53:50.263 に答える