Google Sheets API v4, не может сделать анонимный запрос PUT к общедоступному документу

У меня есть таблица Google, которая используется как «Любой, у кого есть ссылка, может РЕДАКТИРОВАТЬ». Я хочу выполнить запрос PUT для редактирования этого документа с помощью API Google Sheets v4. В идеале я хочу сделать это, используя только ключ API, а не используя OAuth2, поскольку аутентификация в Google с использованием OAuth является проблемой для работы с Xamarin. Кроме того, это потребовало бы от пользователя ввода пароля каждый час, что нарушило бы удобство использования.

Предположительно, запросы на общедоступные данные можно отправлять, используя только ключ API в запросе, не требуя OAuth. Это работает для запросов GET, но я получаю ответ 401, когда делаю это для запроса PUT. (Это непреднамеренно не удалось для запросов GET раньше, что наводит меня на мысль, что это должно работать и для запросов PUT, если целевой документ общедоступен).

GET https://sheets.googleapis.com/v4/spreadsheets/{sheetId}/values/Sheet1%21A1%3AJ1?key={myKey} HTTP/1.1 

... работает, но

PUT https://sheets.googleapis.com/v4/spreadsheets/{sheetId}/values/Sheet1%21A1%3AJ1?key={myKey} HTTP/1.1 

... дает 401 Неавторизованный.

Кто-нибудь может пролить свет на то, должно ли это быть возможно, или как это обойти?


person Geir Smestad    schedule 22.12.2016    source источник


Ответы (1)


Анонимные записи с использованием APi не разрешены (в настоящее время для них требуются учетные данные), даже если лист открыт как «любой может редактировать».

person Sam Berlin    schedule 22.12.2016
comment
Спасибо, это снимает вопрос. - person Geir Smestad; 01.01.2017
comment
Как мне это сделать без OAuth 2.0? заранее спасибо - person M. Mariscal; 21.02.2021