Google Drive API - метаданные ресурса, необходимые для вставки комментариев к файлу, даже если ресурс указан.

Я пытаюсь добавить комментарий к документу Google Диска - все токены аутентификации и идентификаторы клиентов верны (все остальное пытается сделать, работает), но при добавлении комментария я получаю сообщение об ошибке:

code: 400,
  message: 'Resource metadata required',
  data: 
   [ { domain: 'global',
       reason: 'required',
       message: 'Resource metadata required' } ] }

Понятия не имею, что происходит. Я отправляю ресурс, содержащий {content: 'something'}, а также еще один параметр для fileId.

Пожалуйста, дайте мне знать, если у вас есть идеи.

Спасибо!


person Edward Sun    schedule 27.08.2013    source источник
comment
Попробуйте вручную установить для свойства body запроса значение `{content: 'something'}`, прежде чем вызывать execute   -  person Niklas    schedule 05.09.2013


Ответы (3)


Это старый вопрос, но, возможно, кто-то все еще может использовать решение, как и я.

Я полагаю, вы пытались сделать это вот так:

var request = client.drive.comments.insert({
  'fileId': fileId,
  'resource': body
});

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

Правильный способ сделать это:

 var request = client.drive.comments.insert(
   { fileId: fileId }, body
  );
person schummar    schedule 30.01.2014

См. Официальную документацию по API Google Диска: Comments.insert (). Внизу страницы вы увидите образцы кода для различных языков, которые вы можете использовать.

В общем, в StackOverflow, если вам нужна более подробная помощь, укажите свой вопрос и добавьте свой исходный код и стек ошибок.

person JunYoung Gwak    schedule 28.08.2013

Для меня это работа.

var options = {
        url: 'https://www.googleapis.com/drive/v2/files/' + params.id + '/permissions',
        headers: {
            'Authorization': 'Bearer ' + self.tokens.access_token,
            'Content-Type': 'application/json',
            'Content-Length': JSON.stringify(params.metadata).length
        },
        body: JSON.stringify(params.metadata)
    };
person Phong Dao    schedule 20.07.2015