AFNetworking POST AFHTTPRequestOperation队列问题

时间:2014-11-14 13:20:04

标签: ios afnetworking afhttprequestoperation

我从服务器请求数据但是我遇到的问题是它首先调用cookie而不是数据,而不是它应该是数据优先于cookie。那么请问我该如何解决这个问题呢?

我通过Charles应用程序看到了这个问题。

AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
[manager POST:string
   parameters:@{@"data": @"<p_LM act=\"info\"/>", @"cookie": [temp objectForKey:@"cookie"]}
      success:^(AFHTTPRequestOperation *operation, id responseObject) {

          NSDictionary *dic  = (NSDictionary *)responseObject;

          NSString *parity = [dic objectForKey:@"Response"];
}

1 个答案:

答案 0 :(得分:2)

ParametersNSDictionary。当AF序列化请求时,它使用字母排序描述符NSDictionary

NSSortDescriptor *sortDescriptor = [NSSortDescriptor sortDescriptorWithKey:@"description" ascending:YES selector:@selector(compare:)];

所以,你有两个选择:

  • 重命名&#34;数据&#34;例如&#34; AAA&#34;然后它将高于&#34; cookie&#34;
  • 更改AF广告单元AFQueryStringPairsFromKeyAndValue方法中的sortDescriptor,并在执行pod update时进行处理。
编辑

以指定第二种方式

如果您想更改AFNetworking代码窗格以使其适用于您,请执行以下操作:

  1. 在AFNetworking中搜索AFQueryStringPairsFromKeyAndValue方法 荚

  2. 改变,例如

    NSSortDescriptor *sortDescriptor = [NSSortDescriptor sortDescriptorWithKey:@"description" ascending:YES selector:@selector(compare:)];
    

    NSSortDescriptor *sortDescriptor = [NSSortDescriptor sortDescriptorWithKey:@"description" ascending:NO selector:@selector(compare:)];
    

    (只是从下到上按字母顺序排序)

  3. 然后如果您将在下次更新AFNetworking广告连播 一年或更早,然后再次添加此更改,因为您的更改将被新的pod更新覆盖...