Ios AF3.0数据无法’;因为它是’;格式正确

Ios AF3.0数据无法’;因为它是’;格式正确,ios,objective-c,afnetworking-3,Ios,Objective C,Afnetworking 3,还有其他类似题目的问题,但没有一个对我有帮助。我必须向服务器发送一个PUT请求,以更改约会状态,因此我将此方法-(void)appointmentStatusChangedTo:(NSString*)statusID或AppointID:(NSString*)AppointID,其中我将URL和参数设置为 NSString *string = [NSString stringWithFormat:@"%@/API/Appointments/3",BaseURLString]; NSDic

还有其他类似题目的问题,但没有一个对我有帮助。我必须向服务器发送一个
PUT
请求,以更改约会状态,因此我将此方法
-(void)appointmentStatusChangedTo:(NSString*)statusID或AppointID:(NSString*)AppointID
,其中我将URL和参数设置为

NSString *string = [NSString stringWithFormat:@"%@/API/Appointments/3",BaseURLString];
    NSDictionary *para = @{
                           @"AppointmentStatusId":statusID,
                           @"ID":appointmentID
                           };
然后,我提出了URL请求,如下所示

AFURLSessionManager *manager = [[AFURLSessionManager alloc] initWithSessionConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]];

    NSMutableURLRequest *req = [[AFJSONRequestSerializer serializer] requestWithMethod:@"PUT" URLString:string parameters:para error:nil];
之后,我将授权令牌的头设置为

 NSString *token = [NSString stringWithFormat:@"Bearer %@",[[NSUserDefaults standardUserDefaults] objectForKey:@"userToken"]];

    [req setValue:token forHTTPHeaderField:@"Authorization"];
所以最后我把它叫做

[[manager dataTaskWithRequest:req completionHandler:^(NSURLResponse * _Nonnull response, id  _Nullable responseObject, NSError * _Nullable error){
        if (!error) {
            if (response) {
                NSLog(@"Respose Object: %@",responseObject);
                [self.patientsAppointmentsTableView reloadData];
            }
        }
        else {
    // NSLog(@"Error: %@, %@, %@", error, response, responseObject);
    NSLog(@"Error: %@", error.localizedDescription);
}
        }] resume];
现在它成功地将数据发送到服务器,但作为响应,我得到了

错误:无法读取数据,因为它的格式不正确 格式

我不确定当时的反应是什么样的,因为我没有和后台人员联系。但据我记忆所及,这只是一个简单的1。因此,请告诉我如何使用AFNetworking 3.0或我的代码中的任何更改来处理任何类型的响应。

尝试使用以下代码:

AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];

AFJSONRequestSerializer *serializer = [AFJSONRequestSerializer serializer];
[serializer setStringEncoding:NSUTF8StringEncoding];

manager.requestSerializer=serializer;
manager.responseSerializer = [AFHTTPResponseSerializer serializer];

使用Afnetworking 3.0尝试以下代码

AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
    manager.responseSerializer = [AFJSONResponseSerializer serializer];
    [manager GET:url parameters:nil progress:nil success:^(NSURLSessionTask *task, id responseObject) {
        NSLog(@"%@",responseObject);
        self.responseHandlers(YES,responseObject);
    } failure:^(NSURLSessionTask *operation, NSError *error) {
        self.responseHandlers(NO,nil);
    }];

你的AFResponseSerializer是什么?@Larme还有什么选择?是的,响应不是JSON我应该在那里放什么。你能给我看一下你的响应吗?我读错了AFResponse和AFRequest。将manager.responseSerializer设置为[AFResponseSerializer]或类似设置。@EktaMakadiya没有响应。它正在出错,问题中提到了错误。阅读我对Larme评论的回复。这就是我可能要寻找的。你如何像OP那样在代码中加入“Bear AccessToken”?