OnHTTPBeforeCommandまたはOnHTTPDocumentイベントを使用して、TIdHTTPProxyServerから投稿データを取得しようとしていますが、すべてが役に立ちません。どうやってやるの?
ところで、私はIndy 10を使用していますが、他のソリューション(たとえば、シナプスを使用)はかっこいいでしょう。
前もって感謝します。
POST
データはOnHTTPBeforeCommand
まだソケットから読み取られていないため、イベントで使用できません。そのイベントで使用できるのは HTTP ヘッダーのみです。
POST
イベントでデータを利用できますがOnHTTPDocument
、次の条件下でのみ使用できます。
リクエストはPOST
ゼロ以外のContent-Length
ヘッダーを使用します (圧縮/チャンクされた HTTP メッセージを処理するTIdHTTPProxyServer
ためのヘッダーをまだサポートしていないため)。Transfer-Encoding
TIdHTTPProxyServerContext.TransferMode
プロパティは、イベントが終了tmFullDocument
したときです。OnHTTPBeforeCommand
デフォルトでは、はプロパティTransferMode
と同じ値に設定されています。これはデフォルトです。TIdHTTPProxyServer.DefaultTransferMode
tmFullDocument
クライアントは、ターゲットとして完全な URL を指定しPOST
て、リクエストを に直接送信します。TIdHTTPProxyServer
代わりに、クライアントがターゲット サーバーへのトンネルを確立するためにCONNECT
直接要求を送信し、トンネルを介してターゲット サーバーに要求を送信する場合 (たとえば、HTTPS 要求の SSL セッションを確立する場合) は、そのデータへのアクセスを公開しません。これは、あるソケットから別のソケットへのストレート パススルーです。TIdHTTPProxyServer
POST
TIdHTTPProxyServer