Tôi cố gắng để truy cập vào một dịch vụ web, qua một lớp con AFHTTPClient, có một biến chứngAFNetworking AFHTTPClient các loại nội dung khác nhau cho sự thành công và thất bại
Nếu yêu cầu thành công, nội dung được trả về như JSON. Nếu nó không thành công vì lý do nào đó, lỗi từ máy chủ được trả về định dạng dưới dạng XML.
Hiện tại, cách duy nhất tôi có thể giải quyết vấn đề này là không cố gắng sử dụng các yêu cầu XML/JSON RequestOperations cụ thể và hoàn toàn xử lý mọi thứ dưới dạng yêu cầu HTTP đơn giản, sau đó tự phân tích cú pháp theo cách thủ công, tùy thuộc vào phản ứng.
Đáng buồn thay, tôi không có quyền kiểm soát dịch vụ web hoặc tôi đảm bảo rằng nó là tất cả JSON.
Có ai có đề xuất nào tốt hơn để xử lý việc này không?
[EDIT]
Tôi đoán một cách để làm cho nó hơi bụi, sẽ tạo ra một lớp con mới của AFHTTPRequestOperation, mà xử lý việc phát hiện các nội dung gõ nội bộ, và sau đó chuyển trở lại hoặc phân tích cú pháp JSON hoặc một đối tượng GDataXML tùy thuộc vào những gì được trả về từ máy chủ.
Cảm ơn
Điều này tương tự như một số dịch vụ web mà tôi đã sử dụng, JSON thành công và văn bản thuần túy bị lỗi. Điều tốt nhất bạn có thể làm là ném một lỗi lên một loại nội dung khác với JSON hoặc thử và phân tích cú pháp phản hồi cho các lỗi cụ thể. – danielbeard