サーバーが 401 を返す場合、ASIHTTPRequest の応答データとヘッダー フィールドは常に null です。
ASIAuthenticationErrorType に設定されているステータス コードと NSError コードしか読み取れません。Charles Web Proxy を使用してトラフィックを盗聴しています。サーバーが空でないレスポンスボディを返していることがはっきりとわかります。
authenticationNeededForRequest: デリゲートを実装して、応答データが null かどうかを確認してみました。ただし、このデリゲート メソッドは呼び出されません。
ネットワークキューを初期化するために使用しているコードは次のとおりです。
networkQueue = [[ASINetworkQueue alloc] init];
[networkQueue setDelegate:self];
[networkQueue setRequestDidFinishSelector:@selector(requestDidFinish:)];
[networkQueue setRequestDidFailSelector:@selector(requestDidFail:)];
そして、リクエストを送信するには
ASIHTTPRequest * request = [ASIHTTPRequest requestWithURL:apiURL];
request.delegate = self;
request.userInfo = userInfo;
[request setRequestMethod:method];
[networkQueue addOperation:request];
[networkQueue go];
ありがとうございました!