0

AFHTTPRequestOperationを使用してカスタムヘッダーキーを取得しようとしています。allHeaderFieldsを使用してみましたが、何もありません。ヘッダーの応答は次のとおりです。

HTTP/1.1 302 Moved Temporarily
Server  nginx
Date    Tue, 19 Feb 2013 16:38:29 GMT
Content-Type    text/html
Transfer-Encoding   chunked
Connection  keep-alive
Set-Cookie  AUTH-ID="fjArrnmlyNMU9kfIu38Oc0LS451Y/UaMn0rb5sKj46CxmfJj8y8yr8CfwOewItFY"; HTTPOnly
X-AUTH-TOKEN    mfy+426BNZdq1h92As3oXdZbf2iOI7wV7EOEUMAV3hAqtY7cOnWvA4df7h6RfjeD
Location    /home.php

私はこのようにAFHTTPRequestOperationを使用します

AFHTTPRequestOperation *operation = [[AFHTTPRequestOperation alloc]initWithRequest:request];
    [operation  setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject) {
NSDictionary *headerData = [[operation response] allHeaderFields];
        if ([headerData objectForKey:@"X-AUTH-TOKEN"] != nil)
            token = [headerData objectForKey:@"X-AUTH-TOKEN"];

        NSLog(@"headers = %@", headerData);
        NSLog(@"token = %@", token);
        ...
}
failure:^(AFHTTPRequestOperation *operation, NSError *error) {
        ...

}];

ただし、X-AUTH-TOKENキーはヘッダーNSLogに表示されません。デバッグにチャールズプロキシを使用し、チャールズがX-AUTH-TOKENキーを表示するため、ヘッダーキーが存在することを確認します。たぶん302ステータスコードが問題です、誰かが私を助けてくれますか?ありがとう。

[編集]応答のステータスコードを表示しようとすると、200になります。

4

1 に答える 1

-1

インターセプトリダイレクト応答のためにAFURLConnectionOperationのいくつかの調整を使用して解決しました。

于 2013-02-19T18:09:29.133 に答える