доступ к контактам google с помощью javascript-клиента google api - как?

Я реализую веб-приложение только на стороне клиента на основе библиотеки javascript google api. К сожалению, эта библиотека не поддерживает контакты. Или это так? Это недокументированная функция? Если нет, то есть ли другой рабочий способ доступа к контактам? Например. с устаревшим gdata API? Я уже нашел несколько ответов на эту тему в stackoverflow. Но ни один из них не дал мне четкого ответа.


person David Graf    schedule 16.03.2013    source источник


Ответы (3)


Поскольку мне нужен доступ только для чтения, я решил использовать jsonp для доступа к контактам. В противном случае мне нужно использовать дополнительную библиотеку, которая устарела, и устаревшую версию API (поскольку клиентская библиотека gdata не поддерживает API контактов версии 3).

Поскольку у меня уже есть токен доступа, довольно легко получить контактные данные:

http.jsonp(https://www.google.com/m8/feeds/contacts/[email protected]/full?access_token=xyz&alt=json&callback=JSON_CALLBACK")
  .success(function(data, status, headers, config) { ...})
  .error(function(data, status, headers, config) {...})
person David Graf    schedule 18.03.2013

Подходит ли вам этот API? Похоже, он использует HTTP-запросы и XML - не только Javascript, но может быть выполнен в Javascript/jQuery с помощью AJAX.

person Cody    schedule 16.03.2013
comment
Это соответствует тому, что мне нужно. Но как я могу использовать его из javascript, не нарушая междоменное нарушение? К сожалению, API контактов работает в другом домене (google.com), чем другой API (googleapis.com)... - person David Graf; 17.03.2013

Нет проблем с использованием устаревшей клиентской библиотеки GData для доступа к Contacts V3 API, а также с использованием официального JS-клиент Google API. Вы просто не сможете получить официальную поддержку библиотеки GData.

В противном случае, в зависимости от вашего варианта использования, API Google+ совместим с официальным JS-клиентом и может соответствовать вашим потребностям.

person Brendan    schedule 18.03.2013