如何解决如何从 DHL Api 获得对浏览器的响应
我对来自 dhl 的 api 有问题,我从 dhl 创建了 GET api,当在控制台中打印时,结果将打印,但是当使用浏览器时,我得到了这样的响应:
com.squareup.okhttp.internal.http.RealResponseBody@68bd3d26
这是我的代码:
@RequestMapping("/getData")
public String getAcc() throws IOException
{
OkHttpClient client = new OkHttpClient();
MediaType mediaType = MediaType.parse("application/json");
HttpUrl httpUrl = new HttpUrl.Builder()
.scheme("https")
.host("api-eu.dhl.com")
.addPathSegment("track")
.addPathSegment("shipments")
.addQueryParameter("trackingNumber","cencored")
.addQueryParameter("service","express")
.build();
Request request = new Request.Builder()
.addHeader("content-type","application/json")
.addHeader("Connection","close")
.addHeader("DHL-API-Key","cencored")
.addHeader("ConsumerKey","cencored")
.addHeader("ConsumerSecret","cencored")
.removeHeader("Content-Encoding")
.removeHeader("Content-Length")
.url(httpUrl) // <- Finally put httpUrl in here
.build();
response = client.newCall(request).execute();
System.out.println(response.body().string());
return this.response.body().toString();
}
解决方法
解决了... 这很奇怪,但对我有用。 所以我们不能调用“response.body().string();”两次。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。