में GET शैली अनुरोध के रूप में क्रमबद्ध किया जा रहा है, मैं बस RestKit 0.20.0 के साथ शुरू कर रहा हूं और मुझे एक अच्छी तरह से स्वरूपित JSON अनुरोध बनाने में समस्या हो रही है।RestKit 0.20 JSON ऑब्जेक्ट को POST body
मैं इस (बाकी किट लॉग से) मिलती है:
request.body=title=A%20glorious%20walk%20in%20the%20woods&startDateTime=2013-01-13%2016%3A09%3A33%20%2B0000&endDateTime=2013-01-13%2016%3A09%3A43%20%2B0000&points[][longitude]=-122.0307725&points[][latitude]=37.3310798&points[][longitude]=-122.0307334&points[][latitude]=37.33154242&points[][longitude]=-122.03075743&points[][latitude]=37.33138305&points[][longitude]=-122.03075659&points[][latitude]=37.33131185&points[][longitude]=-122.03057969&points[][latitude]=37.33156519&points[][longitude]=-122.03075535&points[][latitude]=37.33144466&points[][longitude]=-122.03076342&points[][latitude]=37.33123666&points[][longitude]=-122.03074488&points[][latitude]=37.33149482&points[][longitude]=-122.03068145&points[][latitude]=37.33155419&points[][longitude]=-122.03062909&points[][latitude]=37.33156564&points[][longitude]=-122.03076853&points[][latitude]=37.33115792
जब मैं इस (कर्ली कोष्ठक के साथ सामान्य json वस्तु और अंक संपत्ति के लिए एक सरणी) हैं:
{
title: "Something",
startDateTime: "dateinfo",
endDateTime: "moredateinfo",
points: [
{
latitude: "37.33131313",
longitude: "122.4325454"
},
{
latitude: "37.33131313",
longitude: "122.4325454"
}
]
}
मेरे पास है दो मुख्य ऑब्जेक्ट्स: डीएलपॉक ऑब्जेक्ट्स के एनएसएससेट की तुलना में एक डीएलवॉक (वे कोरडाटा ऑब्जेक्ट्स हैं, लेकिन फिलहाल मैं इसे अनदेखा कर रहा हूं और केवल HTTP अनुरोध बनाने पर ध्यान केंद्रित कर रहा हूं)
यहां सी है स्तोत्र मैं अपने अनुरोध बनाने के लिए उपयोग कर रहा हूँ:
// Point mapping
RKObjectMapping *mappingPoint = [RKObjectMapping requestMapping];
[mappingPoint addAttributeMappingsFromArray:@[@"latitude", @"longitude"]];
RKRequestDescriptor *reqDescPoint = [RKRequestDescriptor requestDescriptorWithMapping:mappingPoint objectClass:[DLPoint class] rootKeyPath:nil];
// Walk mapping
RKObjectMapping *mappingWalk = [RKObjectMapping requestMapping];
[mappingWalk addAttributeMappingsFromArray:@[@"endDateTime", @"startDateTime", @"title"]];
RKRequestDescriptor *reqDescWalk = [RKRequestDescriptor requestDescriptorWithMapping:mappingWalk objectClass:[DLWalk class] rootKeyPath:nil];
// Define the relationship mapping
[mappingWalk addPropertyMapping:[RKRelationshipMapping relationshipMappingFromKeyPath:@"points" toKeyPath:@"points" withMapping:mappingPoint]];
RKObjectManager *manager = [RKObjectManager managerWithBaseURL:[NSURL URLWithString:@"http://192.168.1.10:8080"]];
[manager addRequestDescriptor:reqDescWalk];
[manager addRequestDescriptor:reqDescPoint];
[manager addResponseDescriptor:responseDescriptor];
// POST to create
[manager postObject:walk path:@"/walk/save" parameters:nil success:nil failure:nil];
तो सवाल यह है: क्यों मैं अपनी पोस्ट शरीर में एक सामान्य लग रही JSON ऑब्जेक्ट नहीं मिल रहा है?
इतना आसान, विश्वास नहीं कर सकता कि मुझे याद आया! धन्यवाद! – codemonkey