Swift IOS Reading JSON from url -
on below method, can place value not location value. how can location?
thank in advance!!
func searchdb(looking: string){ var urlstring:string = "urlgoeshere?q=\(looking)" let url = nsurl(string: urlstring) let session = nsurlsession.sharedsession() let task = session.datataskwithurl(url!, completionhandler: { (data, response, error) -> void in if error != nil { println(error) } else { //processing data if let arr = nsjsonserialization.jsonobjectwithdata(data, options: nil, error: nil) as? [anyobject] { currplace in arr { println(currplace["name"]) println(currplace["location"]) } } else { erroroccurred = true } }//eo potential data }) task.resume() }//eom
this result output getting:
optional(buddha-bar) optional(nil)
json sample:
sample data:
{
"formatted_address": "8-12 rue boissy d'anglas, 75008 paris, france",
"geometry": {
"location": {
"lat": 48.868194,
"lng": 2.321596
}
},
"icon": "http://maps.gstatic.com/mapfiles/place_api/icons/bar-71.png",
"id": "560dd225114fd10997f75ee777bad84bcb40c529",
"name": "buddha-bar",
"opening_hours": {
"open_now": true,
"weekday_text": []
},
"photos": [
{
"height": 848,
"html_attributions": [],
"photo_reference": "cnrnaaaaifuh9miqwagqydwep-ens4e_npqn_mpyiqdi49ukun_czkxgtuh_zqt8qbeqbuel9seozvyyivva5-tlweeqo9_2torg_cmti_cy5l_pathdzd1_krqbf7ojny81rwd3bra8fzeikjfqtmgo-at19riqag5kksqeoeedm69uhuwkvbouldj1-posgv4lsg5y1rju_phm_ng", "width": 1919
}
],
"place_id": "chijrs81ac1v5kcrruqqbmttjju",
"price_level": 3,
"rating": 3.7,
"reference": "cmreaaaajjsknn69nw3gbvtqlpsx11psr-qvk6chplhf-odxabyq7dwln65b1svujolvnrgabg4k3w7qcj9_hkxvx20q4ynr2714zqqw89gyfgctxaxonrh09_uvgk97dewsyryuehaczr_gzovu0mmg1ozr0x3kghqej1vr3rsni6vxyzh83w_licuk_g",
"types": [
"bar",
"restaurant",
"food",
"establishment"
] },
json data without spaces
sample data: { "formatted_address": "8-12 rue boissy d'anglas, 75008 paris, france", "geometry": { "location": { "lat": 48.868194, "lng": 2.321596 } }, "icon": "http://maps.gstatic.com/mapfiles/place_api/icons/bar-71.png", "id": "560dd225114fd10997f75ee777bad84bcb40c529", "name": "buddha-bar", "opening_hours": { "open_now": true, "weekday_text": [] }, "photos": [ { "height": 848, "html_attributions": [], "photo_reference": "cnrnaaaaifuh9miqwagqydwep-ens4e_npqn_mpyiqdi49ukun_czkxgtuh_zqt8qbeqbuel9seozvyyivva5-tlweeqo9_2torg_cmti_cy5l_pathdzd1_krqbf7ojny81rwd3bra8fzeikjfqtmgo-at19riqag5kksqeoeedm69uhuwkvbouldj1-posgv4lsg5y1rju_phm_ng", "width": 1919 } ], "place_id": "chijrs81ac1v5kcrruqqbmttjju", "price_level": 3, "rating": 3.7, "reference": "cmreaaaajjsknn69nw3gbvtqlpsx11psr-qvk6chplhf-odxabyq7dwln65b1svujolvnrgabg4k3w7qcj9_hkxvx20q4ynr2714zqqw89gyfgctxaxonrh09_uvgk97dewsyryuehaczr_gzovu0mmg1ozr0x3kghqej1vr3rsni6vxyzh83w_licuk_g", "types": [ "bar", "restaurant", "food", "establishment" ] },
adding little formatting pertinent part of data:
sample data: { "formatted_address": "8-12 rue boissy d'anglas, 75008 paris, france", "geometry": { "location": { "lat": 48.868194, "lng": 2.321596 } }, "icon": "http://maps.gstatic.com/mapfiles/place_api/icons/bar-71.png", "id": "560dd225114fd10997f75ee777bad84bcb40c529", "name": "buddha-bar",
it unclear "sample data:" means not quoted, may added print statement (my guess) in case not needed access components.
the name addresses as:
["name"]
the location in lat/lon there 2 accesses:
["geometry"]["location"]["lat"]
["geometry"]["location"]["lon"]
in above applicable language syntax must applied, in swift there pain.
see json.org information on json.
Comments
Post a Comment