問題タブ [qhttp]
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.
c++ - QHttp では Qt5 では使用できません
QHttp
クラスが Qt5 で使用できなくなったことに気付きQNetworkAccessManager
ました。これを行うには を使用する必要があるというエラー メッセージが表示され続けます。
Qt5でこのクラスにアクセスする方法はありますか?
c++ - QNetworkAccessManager と QNetworkReply でネットワーク障害をシミュレートする
Qt4.8 を使用していますが、QNetworkAccessManager を使用する既存のコードにネットワーク障害を挿入したいと考えています。ただし、このクラス、特に関連する QNetworkReply には奇妙なセマンティクスがあるようです。QNetworkAccessManager のサブクラスと QNetworkReply のサブクラスを作成しました。私の QTestNetworkAccessManager は、ベース QNetworkAccessManager によって作成されたオブジェクト、またはリスト内の次のテスト応答のいずれかを返します。
単一のリクエストという単純で些細なケースでは、私のテスト コードは機能しているように見えますが、大量のネットワーク トラフィックを処理するより大きなアプリにコードを配置すると、2 つの問題が発生します。
まず、QNetworkAccessManager は、作成している QNetworkReply オブジェクトのプライベートな知識を持っているようです。(Qtソースの検査に基づく)。たとえば、さまざまなフレーバーの QHttpReplyImpl やその他のさまざまな Impl オブジェクトを作成し、それらをさまざまな方法で接続するため、私のテスト オブジェクトはその環境では適切な市民ではないようです。これにより、error() シグナルが正しく伝搬されず、メモリ空間でスタックが破損するなどの問題が発生するようです。
(QTextNetworkReply オブジェクト全体を投稿しているわけではありません。これは非常に単純であり、私の質問は特定のコードのトラブルシューティングではないためです。)
私の質問は、QNetworkAccessManager でこの種の障害注入を行って、さまざまな HTTP 障害をシミュレートできた人はいますか?
1 つ考えられたのは、HttpProxy フックを使用して、実際にソケット レベルでデータを注入するプロキシ サーバーを作成し、QHttp* オブジェクト パーサー全体をトラバースすることでしたが、それはかなり面倒に思えます。
QNetworkAccessManager に障害を挿入して、ライブ サーバーと通信しているように振る舞う簡単な方法はありませんか?
ありがとう!
PS私はhttps://blogs.kde.org/2010/08/28/implementing-reusable-custom-qnetworkreplyに精通しているため、QNAMをサブクラス化する道をたどりましたが、そうではないようですエラーのセマンティクスを正しく処理し、コードへの厄介なリンクが壊れています。