Есть ли простой способ попросить клиента google api ruby просто дать вам ответ HTTP-ответа на сайт, а не выполнять прекрасные, но слегка ограниченные перевод в один из их Ruby-представимых объектов?Google Api Ruby Client возвращает фактический HTTP-ответ, а не вспомогательный объект
например.
response = Gmail.client.get_user_message("me", id)
=> #<Google::Apis::GmailV1::Message
response = Gmail.client.list_user_messages("me")
=> #<Google::Apis::GmailV1::ListMessagesResponse
но
response = Gmail.client.delete_user_message("me", id)
=>nil #successfully deleted
Теперь, когда все хорошо и денди, за исключением того, что иногда я просто хочу знать, какой ответ будет возвращаться. то есть ответ HTTP с некоторым JSON в теле. И тогда я буду беспокоиться о том, что я с ней делать ...
я могу принять ответ и использовать
response.to_json
, чтобы получить тело, что бы JSON вернулись (хотя я до сих пор не будет иметь код ответа, и мне нужно ЗНАТЬ, что это один из этих объектов).
Клиентская библиотека, безусловно, получает это, она просто преобразует ее в эти объекты, прежде чем она позволит мне увидеть ее. И если я не знаю, что это объект google (и не nil), я не могу запустить этот to_json последовательно ....
Любые идеи, кроме второго, предполагают, что Google собирается отправить меня обратно? (Я должен отметить, что это произошло при попытке переместить библиотеку с 0,8 api на 0,9 api, поэтому назовите меня циником, если вы хотите, но моя вера в то, что Google не нарушит эти объекты находится на низком уровне ...
Hi. Спасибо за это. Проблема не в том, что сам API отправляет обратно на вызов API-интерфейса. Это то, что возвращает клиент API ruby. За кулисами он определенно собирает JSON, но он возвращает собственный объект. (Google :: Apis :: GmailV1 :: Сообщение .....), а не ответ JSON от API. как стандарт. Интересно, можно ли сказать клиенту API «Пожалуйста, пришлите мне исходный необработанный ответ?». – Carpela