您好我正在尝试从Google Maps API解析此结果
{tooltipHtml:" (10.6 km / 15 mins)",polylines:[{id:"route0",points:"}psuIqmvu@xNnCnAHzBMvBo@??fCmA??MmDEqIHkGViHlHq`A??}DsAuAs@sAeAMAkZwY}OcP{OkOgCiCQ[cBuA??kIuE_S_KeEmDwA{B{EyIyDmHuFgL_CaIYuA?W[mCHc@??p@wANgA?oAIeAUeAKU_Aw@eAJo@z@[B{Ac@QDcVaGsAQyEM{DZaB\\wEbBU?mIrDoBb@yBRUJgKAsCe@mCoAiTkNyBqBkEkFi@a@sCqAgK_CqBMaKBoDGibAmNSOoCc@sIiAQFgD[yH[UIi@?sB\\yA@a@K??[fB??{TfIgBbAwFzD??XjBVX?X",levels:"B???BBBB???@BB???@?????BB??@???@????BB??@???@???????@?????@??@?????@?@??????????????BBBB??BB??B",numLevels:4,zoomFactor:16}]}
但是Restkit不接受编码点并给我这个错误
E restkit.network:RKResponse.m:289 Unable to parse response body: Unexpected token, wanted '{', '}', '[', ']', ',', ':', 'true', 'false', 'null', '"STRING"', 'NUMBER'.
我的代码如下所示,用于解析结果
- (void)request:(RKRequest*)request didLoadResponse:(RKResponse*)response {
NSError *error = nil;
NSDictionary *parsedResponse = [response parsedBody:&error];
答案 0 :(得分:2)
我认为,答案的格式不是JSON。在JSON格式中,键被置于引号中:“”。
请参阅true JSON的示例:
{ “KEY1”:5 “KEY2”: “STRING_VALUE”}
或者从Google服务示例中看到真正的JSON:
{ “状态”:“好”, “结果”:[{ “types”:street_address, “formatted_address”:“1600 Amphitheatre Pkwy,Mountain View,CA 94043,USA”, “address_components”:[{ “long_name”:“1600”, “short_name”:“1600”, “types”:street_number },{ “long_name”:“Amphitheatre Pkwy”, “short_name”:“Amphitheatre Pkwy”, “类型”:路线 },{ “long_name”:“山景”, “short_name”:“山景”, “类型”:[“地方”,“政治”] },{ “long_name”:“加利福尼亚”, “short_name”:“CA”, “types”:[“administrative_area_level_1”,“政治”] },{ “long_name”:“美国”, “short_name”:“US”, “类型”:[“国家”,“政治”] },{ “long_name”:“94043”, “short_name”:“94043”, “types”:postal_code }], “几何”:{ “地点”: { “lat”:37.4219720, “lng”: - 122.0841430 }, “location_type”:“ROOFTOP”, “viewport”:{ “西南”:{ “lat”:37.4188244, “lng”: - 122.0872906 }, “东北”:{ “lat”:37.4251196, “lng”: - 122.0809954 } } } }] }
来自:https://developers.google.com/maps/documentation/geocoding/?hl=ru#JSON
为了测试我的JSON,我通常使用http://json.parser.online.fr/(但对于Google的示例答案,由于名为“type”的未知密钥,它无法正常工作。)