我正在使用接受像这样的
的POST方法的网络服务KEY d ; VALUE {JSON REQUEST}
例如(登录):
d = {“action”:[“login”],“request_data”:{“login”:{“user”: “user”,“password”:“password”}}}
如果我使用AFHTTPClient,服务器找不到任何“d”参数。我试图用所有参数创建字典,通过NSJSONSERIALIZE序列化,然后将所有内容包装在带有键值@“d”的NSMutabliDictionary * parmas中,params传递给[httpClient postPath [....]]但没有成功。 我该怎么办?
答案 0 :(得分:0)
NSString *jsonString = @"YourStringFromServer";
NSDictionary *temDic = [jsonString JSONValue]; // convert string Value to JSON and add it to Dictionary.
NSlog(@"%@",temDic);// set specific key for specific value.
答案 1 :(得分:0)
它正在寻找一个JSON字符串。我在理解你问题中的最后几句话时遇到了一些麻烦(你没有非常清楚地描述这些步骤)但基本上是:
//Create your params
NSDictionary *parametersDictionary = [NSDictionary dictionaryWithObjectsAndKeys:
yourData, @"action",
someMoreData, @"request_data", nil];
NSString *parametersJSONString = [parametersDictionary JSONString];
NSDictionary *parametersToSend = [NSDictionary dictionaryWithObject:parametersJSONString forKey:@"d"];
你应该好好去。请注意JSONString
需要JSONKit。另外,在发送之前调试/记录parametersToSend
以确保您已获得正确的数据,并且问题不在其他地方。