問題タブ [qnetworkaccessmanager]

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 投票する
1 に答える
244 参照

qt - qt webkit のデータベース アクセスの問題

Qt MainWindow に WebView として読み込まれる HTML ファイルがあり、そのファイルは localhost XAMPP フォルダーにあります。このファイルは基本的にユーザーから 2 つの日付と時刻の間隔を取得し、ユーザーが [クエリを取得] ボタンをクリックすると、マップは XAMPP 上の MySQL データベースから取得されたクエリの合計量をヒートマップとして表示します。ただし、この HTML ファイルを Qt から実行しようとすると (HTML ウィンドウの [クエリを取得] ボタンをクリックすると)、Ajax POST エラーが発生し、Qt からデータベースにアクセスできませんが、localhost のコピーではアクセスできます。また、NetworkAccessManager を使用してクエリをフェッチする PHP ファイルに POST しようとしましたが、応答として「不明なエラー」が返されました。これを修正する特定の方法はありますか?HTML-jQuery コードと NetworkAccessManager ポスト コードは次のとおりです。

HTML-jQuery 部分:

そして、返信用の PHP ファイルをテストするために使用した NetworkAccessManager 部分:

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

qt - 2つのスレッドから2つのネットワークリクエストを行うと、Qtアプリケーションがクラッシュします

起動時にメインスレッドから2つのスレッドを起動するQtアプリケーションがあります。これらのスレッドは両方とも、QNetworkAccessManagerオブジェクトの個別のインスタンスを使用してネットワーク要求を行います。私のプログラムは約50%の確率でクラッシュし続けており、どのスレッドがクラッシュしているかわかりません。

2つのスレッド間で直接発生するデータ共有やシグナリングはありません。特定のイベントが発生すると、1つのスレッドがメインスレッドに信号を送り、メインスレッドが2番目のスレッドに信号を送ります。ただし、ログを印刷することで、シグナリング中にクラッシュが発生しないことを確信しています。

両方のスレッドの構造は次のとおりです。URLなどを除いて、スレッド間にほとんど違いはありません。

奇妙なことに、スレッドの1つを開始しないと、プログラムは正常に実行されるか、少なくとも約20回の呼び出しでクラッシュしません。両方のスレッドが次々に実行される場合、プログラムはクラッシュしません。両方のスレッドを同時に起動して実行すると、プログラムは約半分の時間しかクラッシュしません。

ログから収集したもう1つの興味深い点は、プログラムがクラッシュするたびに、コメントでラベル付けされた行my log lineが両方のスレッドによって最後に実行されることです。そのため、どのスレッドがクラッシュを引き起こしているのかわかりません。しかし、QN​​etworkAccessManagerがどういうわけか責任があるのではないかと私は思います。

クラッシュの原因についてはかなり空白です。提案やアドバイスをいただければ幸いです。前もって感謝します。

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

xml - QNetworkAccessManager と Xml 応答

QNetworkAccessmanager を使用して localhost/conductor/api/provider_accounts.xml にリクエストを送信しようとしましたが、ブラウザで開くと適切な出力が得られますが、QNetworkAccessmanager で同じことをすると何も得られません。まったく。これが私のコードです

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

qt - QT QWebView の QNetworkAccessManager からデータを読み取る

QNetworkAccessManager を使用して QWebView から応答データを読み取ろうとしています。

ここにある返信の指示に従いました: QtWebKitで応答を取得する方法

QNetworkAccessManager をサブクラス化し、my クラスを使用するように QWebView を設定しました。

次に、createRequest 関数をオーバーライドして、データの読み取りを試みます。

私はまだ空のデータを取得します。私は何を間違っていますか?

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

c++ - QNetworkAccessManagerのWebページ取得の問題

ヘッダーファイルに次のコードが含まれているWebページのソースコードをダウンロードしようとしています。

およびソースファイル:

およびプッシュボタンコード:

ただし、qDebugが結果スロットで呼び出されることはありません。私は何が欠けていますか?

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

c++ - さまざまなクラスでQNetworkAccessManagerを使用するにはどうすればよいですか?クラス間での重要なデータの一般的な共有?

C ++とQt(C++とQT4.8)を学ぶために取り組んでいるMainWindowアプリケーションがあります。Dialogs / WizardやMainWindowなど、アプリケーションのさまざまなオブジェクトでHTTPリクエストを実行したいと思います。基本的に、アプリケーションごとに1つのQNetworkAccessManagerが必要です。私の質問は、クラス間でこのQNAMを渡す適切な方法は何ですか?

現時点では、ウィザードのコンストラクターに渡すポインターとしてそれを持っていますが、これは...エレガントで柔軟性がないようです。ダイアログまたは作成することにした他のクラスに、1つのQNetworkAccessManagerへのアクセスを与える適切な方法は何ですか?すべてにアクセスできるようにするために必要なデータについても、同じ質問があると思います。

ここで適切に設計されたソリューションは何ですか?シングルトンパターンはオプションのように見えますが、私が理解しているように悪いパターンです。質問を表示するためのコードがここにあります。

ウィザードを起動するMainWindowコンストラクターとスロット:

ユーザーからデータを取得した後にネットワーク要求を行い、データを解析しているウィザードコンストラクター。したがって、QNetworkAccessManagerが必要です。

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

qt - QNetworkAccessManagerバックエンドをリセットする方法

ftpサーバーが認証を必要とする場合、QNetworkAccessManagerはftpによって取得された欠落ファイルを処理しないようです。

状況は次のとおりです。ユーザー名とパスワードを必要とする同じftpサーバーから複数のファイルをダウンロードしています。いくつかのファイルを正常にダウンロードしてから、存在しないファイルのGETを送信します。そのリクエストは失敗を報告します。次に、有効なはずのファイルに対してGETリクエストを送信します。その要求は、終了した信号またはエラーを発行することはありません。

Qt 4.7.4

助けてください!これは私を狂わせています。どういうわけかftpバックエンドをリセットできれば、この問題は解決できるかもしれないと思います。

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

qt - QT Creatorからビルドされたexeをロードすることは、ファイルシステムからexeをロードすることとは異なりますか?[webkitの問題]

会社のイントラネットに接続するデスクトップアプリを書いています。ロードしようとしているページはHTTPですが、HTTPSを使用するログインサイトにリダイレクトされます。QT Creatorから起動すると(リダイレクトと認証の両方が成功し、ページが正しく表示されます)、アプリはページを適切に読み込みますが、ファイルシステムからアプリを実行すると(すべてのDLLがフォルダーに正しく配置されます)、読み込みに失敗します( QWebViewのloadFinished(bool)シグナルはfalseで発行されますが、これはオンラインで学んだまれなケースです)。QNetworkManagerのSIGNAL(finished(QNetworkReply *))から最初の302リダイレクトステータスをキャッチできますが、2回目に信号がキャプチャされると、ステータスが無効になります。QNetworkReplyのドキュメントから、「接続がHTTPベースでない場合、この属性は存在しません」と読みました。私はしません 理由はわかりません。また、SSLエラー信号は発生しません。アプリはQTCreatorからうまく動作するので。打ち上げ時の環境の違いによるものだと思います。誰か手がかりがありますか?ありがとう!

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

qt - Fiddler は QT QNetworkAccessManager トラフィックをキャプチャしませんか?

HTTP ポストを正常に作成している QNetworkAccessManager を使用して QT C++ アプリケーションをテストしていますが、Fiddler でポストを表示できません。Fiddler のセットアップで何が欠けていますか? Fiddler を HTTPS 専用にセットアップする必要があることは理解していますが、このアプリケーションから Fiddler に基本的な HTTP トラフィックが表示されません。Fiddler は、ブラウザーを含む他のすべてのアプリケーションや、Flickr Uploadr ツールなどの他の C++ アプリからのトラフィックを認識しています。

QT QNetworkAccessManager トラフィックをキャプチャするには、Fiddler で何を設定する必要がありますか? チャールズも試してみましたが運が悪かった...

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

c# - QNetworkAccessManager->DLL で呼び出されるとフリーズする

ネットワークを実行したい dll があります。この dll は、C# アプリケーションからアンマネージ DLL として呼び出されます。すべての初期化は正常に機能しますが、->get() が実行されるたびにフリーズします。私はこのコードを持っています:

「取得前」のコールバックは正常に実行されますが、「取得後」のコールバックは実行されないため、マネージャーが Get() メソッドを試行すると完全にフリーズすると思います。私は何かを見逃したことがありますか、それとも DLL では不可能ですか?