首页 > 解决方案 > 使用 AFHTTPSessionManager 发送 POST 请求时如何向参数发送空白数据

问题描述

我是 REST API 的新手。我正在尝试使用 POST 方法将一些数据发送到 Web api。一切运行良好,直到我尝试将空白数据发送到参数。下面是我的相同代码

[dict setObject:strReqId forKey:@"ReqId"];
[dict setObject:strOrderId forKey:@"OrderId"];
[dict setObject:strScheduleId forKey:@"ScheduleId"];
 AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];

manager.securityPolicy.allowInvalidCertificates = YES;
manager.securityPolicy.validatesDomainName = NO;
manager.responseSerializer = [AFJSONResponseSerializer serializerWithReadingOptions:NSJSONReadingAllowFragments];

[manager POST:URLString parameters:dict progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject){
    NSLog(@"%@",responseObject);

    NSString *strResponse = [NSString stringWithFormat:@"%@",responseObject];
    if (strResponse.length>0)
    {
        if ([strResponse isEqualToString:@"0"])
        {
            UIAlertView *alert3 = [[UIAlertView alloc] initWithTitle:[NSString stringWithFormat:NSLocalizedString(@"Warning!", nil)] message:[NSString stringWithFormat:NSLocalizedString(@"Something went wrong. Please try again.", nil)] delegate:self cancelButtonTitle:nil otherButtonTitles:[NSString stringWithFormat:NSLocalizedString(@"OK", nil)],nil];
            [alert3 show];
        }
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error)  {

}];

但是当我尝试将空白数据发送到任何参数时,

[dict setObject:@"" forKey:@"ReqId"];

我得到一个“0”作为回应。请帮我。

标签: objective-crestapipostafnetworking-3

解决方案


[dict setObject:@[] forKey:@"ReqId"];试试看。实际上,您必须使用它传递任何类型的数据。这里的@[]意思是空数组。


推荐阅读