1

我目前通過GoogleContact API v3訪問谷歌聯繫人。我使用以下命令:是否有sdk/lib來解析由Google Contact API v3返回的gdata(json)數據?

"https://www.google.com/m8/feeds/contacts/default/full?access_token=" + token.access_token + "&alt=json&v=3&q=Susan" 

它以gdata格式返回一個json結構響應。

{ 
"version": "1.0", 
"encoding": "UTF-8", 
"feed": { 
    "xmlns": "http://www.w3.org/2005/Atom", 
    "xmlns$openSearch": "http://a9.com/-/spec/opensearch/1.1/", 
    "xmlns$batch": "http://schemas.google.com/gdata/batch", 
    "xmlns$gd": "http://schemas.google.com/g/2005", 
    "xmlns$gContact": "http://schemas.google.com/contact/2008", 
    "gd$etag": "W/\"A0IGQ3gycSt7I2A9XR5WEk4.\"", 
    "id": { 
     "$t": "[email protected]" 
    }, 
    "updated": { 
     "$t": "2017-01-24T06:32:02.699Z" 
    }, 
    "category": [{ 
     "scheme": "http://schemas.google.com/g/2005#kind", 
     "term": "http://schemas.google.com/contact/2008#contact" 
    }], 
    "title": { 
     "$t": "User1 contact" 
    }, 
    "link": [{ 
     "rel": "alternate", 
     "type": "text/html", 
     "href": "http://www.google.com/" 
    }, { 
     "rel": "http://schemas.google.com/g/2005#feed", 
     "type": "application/atom+xml", 
     "href": "https://www.google.com/m8/feeds/contacts/darewreckk%40gmail.com/full?v=3" 
    }, { 
     "rel": "http://schemas.google.com/g/2005#post", 
     "type": "application/atom+xml", 
     "href": "https://www.google.com/m8/feeds/contacts/firstlast%40gmail.com/full?v=3" 
    }, { 
     "rel": "http://schemas.google.com/g/2005#batch", 
     "type": "application/atom+xml", 
     "href": "https://www.google.com/m8/feeds/contacts/firstlast%40gmail.com/full/batch?v=3" 
    }, { 
     "rel": "self", 
     "type": "application/atom+xml", 
     "href": "https://www.google.com/m8/feeds/contacts/firstlast%40gmail.com/full?alt=json&q=First&max-results=25&v=3" 
    }], 
    "author": [{ 
     "name": { 
      "$t": "First Last" 
     }, 
     "email": { 
      "$t": "[email protected]" 
     } 
    }], 
    "generator": { 
     "version": "1.0", 
     "uri": "http://www.google.com/m8/feeds", 
     "$t": "Contacts" 
    }, 
    "openSearch$totalResults": { 
     "$t": "2" 
    }, 
    "openSearch$startIndex": { 
     "$t": "1" 
    }, 
    "openSearch$itemsPerPage": { 
     "$t": "25" 
    }, 
    "entry": [{ 
     "gd$etag": "\"QHc9fjVSLyt7I2A9WxBXFUgKRAI.\"", 
     "id": { 
      "$t": "http://www.google.com/m8/feeds/contacts/firstlast%40gmail.com/base/8" 
     }, 
     "updated": { 
      "$t": "2010-01-26T23:59:21.966Z" 
     }, 
     "app$edited": { 
      "xmlns$app": "http://www.w3.org/2007/app", 
      "$t": "2010-01-26T23:59:21.966Z" 
     }, 
     "category": [{ 
      "scheme": "http://schemas.google.com/g/2005#kind", 
      "term": "http://schemas.google.com/contact/2008#contact" 
     }], 
     "title": { 
      "$t": "FirstName LastName" 
     }, 
     "link": [{ 
      "rel": "http://schemas.google.com/contacts/2008/rel#photo", 
      "type": "image/*", 
      "href": "https://www.google.com/m8/feeds/photos/media/first.name%40gmail.com/8?v=3" 
     }, { 
      "rel": "self", 
      "type": "application/atom+xml", 
      "href": "https://www.google.com/m8/feeds/contacts/first.name%40gmail.com/full/8?v=3" 
     }, { 
      "rel": "edit", 
      "type": "application/atom+xml", 
      "href": "https://www.google.com/m8/feeds/contacts/first.name%40gmail.com/full/8?v=3" 
     }], 
     "gd$name": { 
      "gd$fullName": { 
       "$t": "First Last" 
      }, 
      "gd$givenName": { 
       "$t": "First" 
      }, 
      "gd$familyName": { 
       "$t": "Last" 
      } 
     }, 
     "gd$email": [{ 
      "rel": "http://schemas.google.com/g/2005#other", 
      "address": "[email protected]", 
      "primary": "true" 
     }] 
    }, { 
     "gd$etag": "\"RX0_cTVSLyt7I2A9WxFTEUUKRwY.\"", 
     "id": { 
      "$t": "http://www.google.com/m8/feeds/contacts/first.last%40gmail.com/base/7cba75689bbb171" 
     }, 
     "updated": { 
      "$t": "2010-04-02T03:47:04.349Z" 
     }, 
     "app$edited": { 
      "xmlns$app": "http://www.w3.org/2007/app", 
      "$t": "2010-04-02T03:47:04.349Z" 
     }, 
     "category": [{ 
      "scheme": "http://schemas.google.com/g/2005#kind", 
      "term": "http://schemas.google.com/contact/2008#contact" 
     }], 
     "title": { 
      "$t": "" 
     }, 
     "link": [{ 
      "rel": "http://schemas.google.com/contacts/2008/rel#photo", 
      "type": "image/*", 
      "href": "LinkUrl" 
     }, { 
      "rel": "self", 
      "type": "application/atom+xml", 
      "href": "SelfUrl3" 
     }, { 
      "rel": "edit", 
      "type": "application/atom+xml", 
      "href": "EditUrl3" 
     }], 
     "gd$email": [{ 
      "rel": "http://schemas.google.com/g/2005#other", 
      "address": "[email protected]", 
      "primary": "true" 
     }] 
    }] 
} 

}

目前,我有響應和創建自己的方法來訪問每個申請。有沒有一個已經定義的庫,將它轉換成更可讀的對象?

例如,「gd $ name」我猜測是名稱的Google數據表示形式。有沒有辦法將它轉換爲一個gData聯繫對象,它給我的名稱字段,而不必編寫我自己的gData分析器?

感謝 德里克

回答

相關問題