您可以使用委托方法之一手动更改值:
- (void)objectLoader:(RKObjectLoader *)objectLoader didSerializeSourceObject:(id)sourceObject toSerialization:(inout id<RKRequestSerializable> *)serialization
{
NSMutableDictionary *params = ((NSDictionary*)*serialization).mutableCopy;
NSNumber *value = [params objectForKey:@"myBoolean"];
[params setObject:value.boolValue ? @"true" : @"false" forKey:@"myBoolean"];
*serialization = params;
}
更新
我发现这仅在您将正文作为普通文本/html 参数发送时才有效。当将 RKObjectManager 的serializationMIMEType 设置为RKMIMETypeJSON时,序列化对象将是 json 作为 NSData。在这种情况下,您仍然可以操作序列化对象,但您必须解析 json,更改它,然后再次对其进行序列化。