【问题标题】:AFHttpClient post with both parameters and JSON in bodyAFHttpClient 帖子在正文中包含参数和 JSON
【发布时间】:2012-06-08 16:04:47
【问题描述】:

抱歉,我对 http post 术语有点陌生!

我必须发布到无法更改的网络服务: 格式如下:

http://SomeWebAddress/JSON/GetAllFeedsRestfullyWrapped?userToken=FOO             

所以参数是:

key:userToken , value=FOO

在正文中,我需要像这样放置一个 JSON 格式的数组:

{"feedIds":[1,2,3,4,5,6]}

我正在尝试使用 AFNetworking 来完成此任务,但似乎无法使其适用于这种情况。

我已经尝试过 AFHttpclient 和 AFJSONReqestIOperation 但我无法正确组合请求和正文。

所以我希望有人知道如何做到这一点。非常感谢您的帮助。

【问题讨论】:

标签: ios json http post afnetworking


【解决方案1】:

试试看

[[YourHTTPClient sharedHTTPClient] postPath:@"GetAllFeedsRestfullyWrapped?userToken=FOO"
                              parameters:[NSDictionnary {"feedIds":[1,2,3,4,5,6]}]
                                 success:^(AFHTTPRequestOperation *request, id JSON)
 {

 }
                                 failure:^(AFHTTPRequestOperation *request, NSError *error)
 {

 }];

【讨论】:

  • 谢谢。当将 getPath 更改为 postPath 时,此设置有效。生病把我自己的真实代码作为答案。抱歉,我还不能赞成您的回复。 (低代表:-()
【解决方案2】:

因此,以 Mathieu Hausherr 的回答为基准,这是我的解决方案:

NSArray *feedIds = [NSArray arrayWithObject:[NSNumber numberWithInteger:3]];
NSMutableDictionary *parameters = [[NSMutableDictionary alloc]init];
[parameters setObject:feedIds forKey:@"listOfFeedIds"];    
[[RssReaderWebserviceApiClient sharedInstance] postPath:@"GetFeedsRestfullyWrapped?userToken=FOO"
                                             parameters:parameters
                                                success:^(AFHTTPRequestOperation *request, id JSON){
                                                    LOG_TEST(1,@"Response: %@",JSON);
                                                }
                                                failure:^(AFHTTPRequestOperation *request, NSError *error){
                                                    LOG_ERROR(1,@"Error: %@",error);
                                                }];

我使用postPath:parameters方法来实现post。
我手动设置请求标头中的参数并从字典中输入正文参数。
编码设置为 JSON。
我有人想知道日志记录是使用 NSLogging 完成的。太棒了。

【讨论】:

    猜你喜欢
    • 2019-07-08
    • 1970-01-01
    • 1970-01-01
    • 2018-08-05
    • 2020-10-01
    • 2015-07-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多