1. 程式人生 > >AFNetworking升級至3.1.0後,原有的方法報錯解決辦法。

AFNetworking升級至3.1.0後,原有的方法報錯解決辦法。

為了配合蘋果官方的ipv6的事,有很多開發人員都把AFNetworking升級了(網路請求自己公司做封裝的除外),但是升級後報錯一堆。怎麼辦?我的笨辦法是:一個一個修改。

1.首先:沒有了AFHTTPRequestOperationManager這個類,被AFHTTPSessionManager所代替。所以把專案中:
AFHTTPRequestOperationManager換成AFHTTPSessionManager
2.其次需要改動:

原有的post請求:

[manager POST:你的介面 parameters:你傳的引數 success:^(AFHTTPRequestOperation *operation
, id responseObject) { } failure:^(AFHTTPRequestOperation *operation, NSError *error) { }];

改為:

[manager  POST:你的介面  parameters:你傳的引數   progress:^(NSProgress * _Nonnull uploadProgress) {
        //這裡是關於讀取進度的
    } success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {
        //這裡是你請求的資料
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) { //請求失敗 }];

原有的get請求:

[manager GET:nil parameters:nil progress:^(NSProgress * _Nonnull downloadProgress) {

    } success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {

    } failure:^(NSURLSessionDataTask * _Nullable task, NSError
* _Nonnull error) { }];

改為:

[manager GET:nil parameters:nil success:^(AFHTTPRequestOperation *operation, id responseObject) {

    } failure:^(AFHTTPRequestOperation *operation, NSError *error) {
    }];