Как получить доступ к фиду JSONP для электронной таблицы Google Apps для вашего домена?

Я не могу понять, как получить доступ к электронной таблице Google через JSONP, если эта таблица является частью учетной записи Google Apps для вашего домена.

Google предоставляет задокументированный способ доступа к электронным таблицам Google через JSONP, который работает для обычных аккаунты gmail.com. Вкратце:

Когда я пробую это на своем собственном домене, все кажется работать. Но когда я посещаю URL-адрес, который я создал, как указано выше, Google выдает ошибку:

The spreadsheet at this URL could not be found. Make sure that you have the right URL and that the owner of the spreadsheet hasn't deleted it.

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


person Mark Fowler    schedule 07.03.2011    source источник
comment
Я застрял с той же проблемой. Вы наконец нашли решение?   -  person Mic    schedule 05.05.2011


Ответы (2)


Хорошо, после некоторого тестирования я нашел решение:

  • вам нужно поделиться им либо как общедоступный в Интернете, либо как любой, у кого есть ссылка
  • а потом надо опубликовать

Оба шага необходимы для разрешения вызова JSONP.

person Mic    schedule 05.05.2011
comment
Спасибо большое. Наконец-то удалось сделать мою электронную таблицу доступной в виде json-канала. - person Konstantin Burov; 24.02.2013

Однако данные, которые возвращаются, довольно туманны. Вы можете использовать YQL для получения более чистых данных:

select * from csv 
where url="https://docs.google.com/spreadsheet/pub?key=XXXX&output=csv" 

Если вы хотите назвать ключи, вы можете добавить:

and columns="foo,bar,baz"

Попробуйте это здесь со своей электронной таблицей; вы должны получить это (я назвал столбец «задача»):

cbfunc({
 "query": {
  "count": 3,
  "created": "2013-01-02T21:37:09Z",
  "lang": "en-US",
  "results": {
   "row": [
    {
     "task": "Steal underpants"
    },
    {
     "task": "..."
    },
    {
     "task": "Profit"
    }
   ]
  }
 }
});
person Dagg Nabbit    schedule 02.01.2013
comment
Ваше решение помогло мне извлечь действительный JSON с помощью YQL. - person MRX; 23.12.2013