Загрузка электронных таблиц Google Sheets от Google Drive on Android

Я работаю над приложением для Android, которое использует gdata-java-client для загрузки документов для дисплея только. До сих пор у меня есть приложение, которое проходит проверку подлинности с сервисами и отображает список пользовательских документов. Когда пользователь выбирает документ, другой запрос сделан для документов сам. Запрос на txt, HTML, rtf и файлы документа работает хорошо, однако когда я запрашиваю электронную таблицу или в .csv или в .xsl формате, результат неожидан.

Я использую объект HTTPResponse сохранить результат HTTPRequest. Когда я запрашиваю документ в .csv или .xsl формате HTTPResponse.parseAsString (), метод производит всю страницу HTML, которая, кажется, домашняя страница Google Docs. Звучит странным, но результатом является фактический HTML для страницы входа в систему. HTTPResponse.getStatusMessage возвращает 200.

Кажется, что я пропускаю что-то простое здесь. Есть ли другое свойство HTTPResponse, который содержит .csv данные?

Я вполне уверен, что я использую корректный uri для загрузки электронных таблиц, потому что это работает, когда я загружаю через свой браузер. В любом случае вот uri в качестве примера:

https://spreadsheets.google.com/feeds/download/spreadsheets/Export?key=0AsE_6_YIr797dHBTUWlHMUFXeTV4ZzJlUGxWRnJXanc&exportFormat=csv

Заранее спасибо за любую справку :)

5
задан wescpy 7 March 2017 в 05:42
поделиться

2 ответа

Я недостаточно знаком с API списка документов, чтобы знать, но из вашего описания похоже, что вы, возможно, столкнулись с ошибкой в ​​API списка документов, и мне кажется, что это важная проблема, которую необходимо исправить.

Сообщите о своей проблеме на форуме API списка документов, чтобы повысить вероятность того, что кто-то знающий сможет разобраться в этой проблеме:

http://www.google.com/support/forum/p/apps- apis / label? lid = 5c316c702e844c99 & hl = en

1
ответ дан 14 December 2019 в 13:29
поделиться

Я не видел вашего кода, но, безусловно, проблема в том, что вы используете ClientLogin и аутентифицированы для API списка документов с помощью службы «writely». Однако, поскольку экспорт электронной таблицы попадет в spreadsheets.google.com, вам нужно будет использовать ClientLogin для аутентификации с помощью «мудрого» сервиса. В Java это означает использование клиентской библиотеки Spreadsheets Java, которая описана здесь: http://code.google.com/apis/documents/docs/3.0/developers_guide_java.html#DownloadingSpreadsheets

Обратите внимание на примечание с пометкой « Важно » вверху, ссылка на который находится здесь. : http://code.google.com/apis/documents/docs/3.0/developers_guide_java.html#DownloadingSpreadsheetsClientLogin

По этой ссылке подробно описано использование экземпляра SpreadsheetClient.

Удачи :)

5
ответ дан 14 December 2019 в 13:29
поделиться
Другие вопросы по тегам:

Похожие вопросы: