Удалить слайд из Google API, используя Ruby - PullRequest
0 голосов
/ 14 сентября 2018

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

Произошла ошибка badRequest: Недопустимые запросы [0]: Запрос не установлен.

Вот как яформатирую свой запрос

requests = [{ 
            requests: { 
              delete_object: 
                { 
                  object_id: '<slide_id_goes_here>' 
                } 
              } 
           }]

Вот как я отправляю запрос в API

service = authorize_service(Google::Apis::SlidesV1::SlidesService.new, scopes)
req = Google::Apis::SlidesV1::BatchUpdatePresentationRequest.new(requests: requests) 
service.batch_update_presentation(presentation_id, req, {})

В чем причина этой ошибки?Как мне отформатировать это в ruby?

Редактировать:

Чтобы получить идентификатор слайда, который я хочу удалить, я беру этот тип объекта

Google::Apis::SlidesV1::Presentation

, а затем позвоните

google_slides_api_presentation_object.slides.first.object_id

Может быть, это часть моей проблемы?

1 Ответ

0 голосов
/ 14 сентября 2018

Как насчет этой модификации?

Модифицированный скрипт:

delete_object = Google::Apis::SlidesV1::DeleteObjectRequest.new()
delete_object.object_id_prop = "<slide_id_goes_here>"
request = Google::Apis::SlidesV1::Request.new(delete_object: delete_object)
requests = Array.new([request])
batch = Google::Apis::SlidesV1::BatchUpdatePresentationRequest.new(requests: [])
batch.update!(requests: requests)
res = service.batch_update_presentation(presentation_id, batch, {})

Справка:

...