/**
 *  最终JSON数据
 */
+ (NSString *)JsonModel:(NSDictionary *)dictModel
{
    if ([NSJSONSerialization isValidJSONObject:dictModel])
    {
        NSData * jsonData = [NSJSONSerialization dataWithJSONObject:dictModel options:NSJSONWritingPrettyPrinted error:nil];
        NSString * jsonStr = [[NSString alloc]initWithData:jsonData encoding:NSUTF8StringEncoding];
        return jsonStr;
    }
    return nil;
}JSONStr打印出来后是标准是JSON数据,这是没问题的,接下来需求是将这个JSONStr转换比特流提交服务器,原谅我不会其他语言,这数据流没闹懂啊,数据流就是NSData吗?那我上面的jsonData不也可以吗?    NSData *data = [Str dataUsingEncoding:NSUTF8StringEncoding];
   我这样转也行吗?

    [manager POST:URLSTR parameters:data success:^(AFHTTPRequestOperation * _Nonnull operation, id  _Nonnull responseObject) {
        
        NSDictionary *qaasa = [NSJSONSerialization JSONObjectWithData:responseObject options:(NSJSONReadingMutableLeaves) error:nil];
        DLog(@"%@",qaasa);
        
    } failure:^(AFHTTPRequestOperation * _Nonnull operation, NSError * _Nonnull error) { 
    }];
难道不是这样子提交吗?但是一直返回是错误服务器处理错误,安卓都已经成功了,我这边还是这样,求解围,整一天了,在线等啊

解决方案 »

  1.   

    你用的是afnetworking吧,不用转,直接把字典丢进去就行了
    [manager POST:URLSTR parameters:data ....
    这里的data直接用你的dictModel就行了前提是你的manager要指定序列化,af自己会帮你转
        AFJSONResponseSerializer *responseSerializer=[AFJSONResponseSerializer serializer];
        AFHTTPRequestSerializer *resquertSerializer=[AFHTTPRequestSerializer serializer];
        [manager setRequestSerializer:resquertSerializer];
        [manager setResponseSerializer:responseSerializer];
      

  2.   

    1楼你说的那个指定化,是说的返回的数据afn会帮你转,而不是发送给服务器的参数楼主:你说的有点不清晰,我想看看你们后台的给的接口文档,以便于方便解决您的问题,一般传的话,一个字典就可以了,但是有时的数据就是以json形式传上去的。