ファイルをアップロードするために、iOS で ASIHttpRequest を使用しています。場合によっては、(一部の条件が満たされていないため) ユーザーがファイルをアップロードできないため、サーバーはカスタム ヘッダーでエラー (400 ステータス コード) を返す必要があります。それが起こると、ASIHttpRequest は失敗しますが、ステータス コードと応答ヘッダーはありません...
ただし、これは大規模なデータ (1M 以上) の場合のみです。より小さなデータの場合、それは仕事です。ソースを掘り下げたところ、すべてのデータが送信される前にサーバーが 400 を返すと、CFNetwork は kCFStreamEventErrorOccurred を返し、ここから読み取りストリームのエラー以外のものを読み取ることができないことがわかりました。しかし、すべてのデータが送信された後にリクエストが失敗した場合、kCFStreamEventEndEncounteredが送信され、ここからステータス コードとレスポンス リーダーを読み取ることができます。
ASIHttpRequest が廃止されたので、自分で修正したいのですが、方法がわかりません。それはCFNetworkの制限なのではないかと心配しています...インターネットやドキュメントでそれについて何も見つけていません...
誰もそれを処理する方法を知っていますか? または、CFNetworkについて十分に知っているので、手がかりを得ることができますか?
ありがとう !