我已成功配置RestKit,因此我可以将POST消息发送到我正在使用的设备。
我已经确认,当我使用Chrome的邮递员时,邮件的格式是正确的。
我需要发送......
ID = 87654321&安培;含量= { “TS”:1396215675, “有效载荷”:{ “ssid_pass”: “等等”}}& T公司= 12345678
所以在Chrome的邮递员中,它是正确的。但是当我使用RestKit postObject
时[manager postObject:self path:@"/tom" parameters:@{@"id" : K_IDVALUE, @"content": myPayload, @"t":K_TVALUE, } success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) {
NSLog(@"Successful Post!");
设备看到的顺序错误。它看到
含量= { “TS”:1396215675, “有效载荷”:{ “ssid_pass”: “等等”}}和ID = 87654321& T公司= 12345678
设备确实希望内容介于POST请求的id和t标签之间。有没有办法强制RestKit采取参数原样?看来消息是按字母顺序排列的(我假设它是在序列化时发生的)。
答案 0 :(得分:0)
有没有办法强制RestKit按原样获取参数?
你传递给RestiKit的是什么:
@{@"id" : K_IDVALUE, … }
是NSDictionary
,没有对其元素进行排序的概念。
然后,您唯一的机会是RestKit正在使用您指定的映射来确定密钥的顺序。我现在无法检查RestKit来源以确认这个假设,但您可以尝试一下(或者只是验证您的映射当前排序是什么)。