загрузка в папку Google Диска с помощью http

#google-drive-api

#google-drive-api

Вопрос:

Я пытаюсь загрузить файл в определенную папку Google Диска. Я смог создать папку и получить возвращаемое значение идентификатора. Проблема в том, что файл создается в корне диска, а не в папке, в которую я хочу его загрузить. Я делаю СООБЩЕНИЕ, чтобы:

 https://www.googleapis.com/upload/drive/v3/files?uploadType=multipartamp;access_token=XXXXX
  

с этими данными заголовка:

 --abc123
Content-Type: application/json; charset=UTF-8

{ "name": "army.jpg",
"parents": [{ "id": "1svduc2OKHfUGkW1R0KWbKTPHxQ_cv8D_" }]
}

--abc123
Content-Type: application/octet-stream
  

В ответ на это нет http-ошибки, все выглядит нормально. Это просто не в том месте. Я должен упомянуть, что мне не удалось найти какую-либо документацию Google о том, как загружать в папку, все примеры предназначены для java / python / node, а не для http. Это всего лишь предположение, основанное на других вопросах, которые я видел в StackOverflow. Приветствуется любая помощь в получении синтаксиса или любого другого правильного.

Ответ №1:

Точки изменения:

  • С вашей конечной https://www.googleapis.com/upload/drive/v3/files точки я подтвердил, что вы используете Drive API v3. "parents": [{ "id": "1svduc2OKHfUGkW1R0KWbKTPHxQ_cv8D_" используется для Drive API v2. Я думал, что это причина вашей проблемы the file is created at the root of the drive, not in the folder .

Пожалуйста, измените текст вашего запроса следующим образом.

Измененное тело запроса:

От:

 "parents": [{ "id": "1svduc2OKHfUGkW1R0KWbKTPHxQ_cv8D_" }]
  

Для:

 "parents": ["1svduc2OKHfUGkW1R0KWbKTPHxQ_cv8D_"]
  

Примечание:

  • В этом ответе предполагается, что вы уже смогли использовать метод «Files: create» Drive API v3. Пожалуйста, будьте осторожны с этим.

Ссылка: