如何调试 Ruby google-api-client 的 HTTP ?

3

我正在尝试使用google-api-client与Google Drive集成。由于涉及很多内容,我想查看正在传输的内容(http级别)。 客户端似乎使用Faraday进行http连接。 我该如何从Faraday中获取调试用的wiredump?

1个回答

6

Google API客户端默认使用Faraday.default_connection。因此,可以操纵这个对象,并且可以通过以下代码简单地完成:

Faraday.default_connection.response :logger

花了我一段时间才弄明白。

嗨,我在使用Google Drive API的请求时遇到了一些问题,我尝试使用这个解决方案来检查HTTP流量,但似乎它并没有起作用... 有什么想法吗?谢谢。 - Sidner
只是一种猜测 - 你可能需要设置Faraday使用的任何记录器的记录级别。 显然要查看日志。 - troelskn
奇怪的是,我只记录了第一个响应(OAuth 响应),而没有记录实际的 API 请求。 - jwadsack
@jwadsack 可能是 - 请注意,我只是猜测 - 他们使用 Faraday 进行身份验证,但之后切换到其他东西? - troelskn
我得到的 result.response 对象(包含所有 API 数据)是一个 Faraday::Response 对象,所以他们正在使用 Faraday。虽然我不确定造成这种情况的原因是什么,但无论如何我已经超越了它。 - jwadsack

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接