因此,我使用终端中的命令从我的Web服务返回JSON:
curl --data 'method=my-service.search&document_type=x&keywords=y' http://mywebsite.com/services/json/my-service.search
我一直试图通过AFNetworking获取此数据,以便在应用中进行解析和使用。到目前为止,这是我尝试过的:
NSDictionary *parameters = [NSDictionary dictionaryWithObjectsAndKeys:@"document_type", @"keywords", nil];
AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
[manager GET:urlString parameters:parameters success:^(AFHTTPRequestOperation *operation, id responseObject)
我将URL字符串设置为http://mywebsite.com/services/json/my-service.search,字典应包含搜索参数。
但是我收到一条错误消息,说明由于"不可接受的内容类型而导致请求失败:text / html" (显然,它想要JSON)。
所以我的问题如下:你如何通过AFNetworking执行cURL数据请求?
我也有一个红利问题:你如何与字典中的参数进行交互(比如,将关键字字段设置为" Stack Overflow"或类似的东西)?
感谢您的帮助!我刚刚开始,所以任何建议都会受到赞赏。
答案 0 :(得分:0)
您可以使用以下命令指定内容类型:
[manager.requestSerializer setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
但首先要确保设置属性请求序列化器:
manager.requestSerializer = [AFJSONRequestSerializer serializer];
应自动设置内容类型
还使用POST:而不是GET: