パーソナルサーバーにファイルをアップロードしようとしています。
これまでのところ、問題なく動作する小さなphpページを作成しました。
少し奇妙なことは、送信するHTTPメッセージの本文をすべて生成して(たとえば、最大4 mbに達する)、サーバーにリクエストを送信するという事実です。
次に、サーバーはHTTPチャレンジを要求し、デリゲート接続:didReceiveAuthenticationChallenge:challengeは、適切な資格情報とデータを使用してサーバーに応答します。
しかし、何が起こったのでしょうか。データは2回送信されました!
実際、プログレスバーを追加すると、アプリがデータ(4mb)を送信し、サーバーが認証を要求し、アプリが認証(別の4mb)でデータを再送信することに気付きました。それで、最後に、私は8mbを送りました。それは間違っている。
グーグルして解決策を探し始めましたが、これを修正する方法がわかりません。
ケースシナリオは2つです(私の推測):
- セッション全体のレルムを共有します(最小限のHTTPリクエスト、チャレンジ、データの順に)
- 同期された方法を使用してHTTP接続を実行します(この種のものを処理するのは醜い方法のように思われるため、やりたくないことです)
ありがとうございました