问题标签 [google-http-client]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
integration-testing - Google-HttpClient:发布请求成功,但没有数据添加到数据库
我正在使用 Google Http Client 来编写 Post 请求。我们的底层调用是一个 AJAX 发布请求,请求成功,返回 200,但没有数据添加到数据库。我不知道 HTTP 调用有什么问题,因为代码被设计为一个具有许多功能(添加联系人、添加组织)的 HTTP URL 调用。如何调试这个?请帮我。谢谢。
底层 javascript 代码可从此处下载。
json - 如何在 App Engine 中将 json 字符串反序列化为 Java 对象
我有一个UI
发送此对象
com.google.api.services.compute.model.Network
的JSON
格式 - 作为HTTP
请求的一部分。我需要将此对象反序列化为Java
对象。我怎么做?我写了一个POJO
像下面这样的简单来模仿行为。
这是我得到的输出。
我不知道我是否必须预先注册所有嵌套类型以及如何注册。
java - ClassNotFoundException: io.opencensus.trace.propagation.TextFormat 未找到
我在 apache karaf 4.2.6 中有一个带有 java 11 的模块,用于验证 Google Play 中的购买收据。我正在使用androidpublisher。
当它第一次发送请求时,我在 OpenCensusUtils 类中收到错误:
java.lang.ClassNotFoundException: io.opencensus.trace.propagation.TextFormat not found by wrap_file__Users_USER_NAME_.m2_repository_io_opencensus_opencensus-contrib-http-util_0.22.1_opencensus-contrib-http-util-0.22.1.jar
在随后的时间里,我在 com.google.api.client.http.HttpRequest 类中出现错误private final Tracer tracer = OpenCensusUtils.getTracer()
:
java.lang.NoClassDefFoundError: Could not initialize class com.google.api.client.http.OpenCensusUtils
这是依赖项:
此外google-api-client
,google-http-client-jackson2
并且google-oauth-client
有版本 1.29.2
在 karaf 我看到库opencensus-api
正在导出一个 io.opencensus.trace.propagation
包含类 TextFormat 的包。
我究竟做错了什么?
java - 在使用 com.google.api.client.http.HttpRequest 的 POST 请求上需要帮助
我正在尝试使用com.google.api.client.http.HttpRequest
请求正文中的数据发送发布请求,但出现错误com.google.api.client.http.HttpResponseException: 400 Bad Request
我需要在"application/x-www-form-urlencoded"
这里发送请求是我的示例:
java - google-http-java-client 请求/使用什么版本的 TLS?
我试图弄清楚google-http-java-client支持的 TLS 的最高版本是什么(通过google-api-client,这是我正在使用的)
我预计它会请求 TLS 1.3,但无法找到验证我假设的文档或发行说明。
我目前正在使用 1.30.10 的 google-api-client,它使用 1.36.0 的 google-http-java-client。
java - 在代理后面使用 google-http-client 和 google-http-client-apache-v2 会产生 NonRepeatableRequestException
我正在使用google-http-client和google-http-client-apache-v2库在代理后面发出POST请求。
该请求产生一个NonRepeatableRequestException:
似乎ApacheHttpRequest将可重复的ByteArrayContent(参见JavaDoc)包装在不可重复的ContentEntity中。
在谷歌库中调试执行,代理返回“需要 407 代理身份验证”,然后它尝试重复请求(猜测包括凭据)并且出现异常,因为谷歌库使用的 ContentEntity 是不可重复的。
有什么方法可以避免与代理握手,包括第一次请求中的凭据以避免实体的重用?
有没有办法告诉谷歌图书馆使用可重复实体?
尝试使用以下库版本:
- google-api-client-1.31.5
- 谷歌-http-client-jackson2-1.39.2
- 谷歌-oauth-client-1.31.5
- google-http-client-apache-v2-1.39.2
- 谷歌-http-client-1.39.2
- httpclient-4.5.13
- httpcore-4.4.14
java - Google HttpResponse - 使用重试逻辑时如何更新标头
我正在尝试防止遇到我遇到的特定错误情况。当我发出 HttpResponse 来构建请求并执行它时,我冒着遇到一些速率限制问题的风险(即使使用 Google RateLimiter 来尝试缓解这种情况)。我认为有意义的是将 HttpBackOffUnsuccessfulResponseHandler 与 ExponentialBackoff 一起使用,这样可以解决问题(因为请求的等待时间非常短。)
但是,在测试过程中,我开始意识到我正在访问的 api 端点需要一个随机数,并且您不能使用相同的随机数连续进行相同的调用(此数据是请求标头的一部分.)
我正在尝试确定是否有一种方法可以使用现有的 HttpBackOffUnsuccessfulResponseHandler 并让它在每次重试之前更新其中一个标题。这很容易做到吗,还是我基本上必须创建自己的 HttpBackOffUnsuccessfulResponseHandler 版本?或者在这一点上,在检测到速率限制违规的情况下,手动捕获并在等待指定时间后重建/重新发送请求是否有意义?(我要访问的 API 端点将包括由于速率限制而需要等待的时间。)
我考虑过只是扩展 HttpBackOffUnsuccessfulResponseHandler 但它的实现方式,我无法覆盖可能让我有机会在重新发送请求之前更新请求的 handleResponse 调用。
我当前如何构建请求的示例如下(已清理):