Получить ссылку на документ Google с помощью Zend

#php #zend-framework #gdata-api #google-docs-api #zend-gdata

#php #zend-framework #gdata-api #google-docs-api #zend-gdata

Вопрос:

Привет всем — я использую Zend Framework с Gdata для обработки API документов Google. Я модифицировал его для использования версии V3, чтобы мы могли загружать PDF-файлы и управлять ими из веб-интерфейса. У нас есть пользовательский класс gDataClient, который настраивает службу Gdata_Docs, Gdata_ClientLogin, и создает новый объект Gdata_Docs.

На странице, с которой я работаю, вот соответствующий код:

 $gDoc = amp; new gDataClient($agentGid, $agentGpw);
$something = $gDoc->GetDoc('mydocID','pdf');
print_r($something->content->src);
  

Это генерирует прямую ссылку на документ, но когда я нажимаю на нее, я получаю 401 (требуется аутентификация), хотя я уже создал и аутентифицировал клиент.

Есть идеи?

Ответ №1:

Хорошо, итак, проблема оказалась в двойных логинах. К учетной записи Gmail автоматически привязывается учетная запись Google, а к учетной записи Google Apps for Domains — нет. Сгенерированная ссылка направлена на docs.google.com/documentLink , для которого аутентифицирована моя учетная запись Gmail. Рассматриваемый документ помечен как закрытый, поэтому я не смог его просмотреть. В итоге я вручную создал ссылку на основе домена приложения Google и идентификатора документа — docs.google.com/a/myDomain.com/viewer?options=stuffamp;srcid=docID

В нашей ситуации это будет отлично работать, поскольку у всех, кто использует систему, будет учетная запись на myDomain.com и эти учетные данные в базе данных — я не уверен, каким было бы обходное решение, позволяющее пользователям использовать стандартные учетные записи Gmail или автономные учетные записи Google.