我有这样的网址https://maps.googleapis.com/maps/api/distancematrix/json?units=metric&origins=Belarus,Minsk,Kuprevicha,1/2&destinations=Belarus,Minsk,Kurchatova,8&key= {API_key} 并在 brovser 中正确计算距离:
{
"destination_addresses" : [ "ул. Курчатова 8, Минск, Беларусь" ],
"origin_addresses" : [
"ул. Академика Купревича 1/2, Минск 220141, Беларусь"
],
"rows" : [
{
"elements" : [
{
"distance" : {
"text" : "24,5 км",
"value" : 24526
},
"duration" : {
"text" : "20 мин.",
"value" : 1196
},
"status" : "OK"
}
]
}
],
"status" : "OK"
}
但是当我使用 org.apache.http.client. Fluent.Request 时:
String req = Request.Get(uri).execute().handleResponse(UTF8_CONTENT_HANDLER);
执行此代码后,我得到这样的结果:
{
"destination_addresses" : [ "Minsk, Belarus" ],
"origin_addresses" : [ "Minsk, Belarus" ],
"rows" : [
{
"elements" : [
{
"distance" : {
"text" : "1 m",
"value" : 0
},
"duration" : {
"text" : "1 min",
"value" : 0
},
"status" : "OK"
}
]
}
],
"status" : "OK"
}
我做错了什么?
最佳答案
该问题不是由 apache Http Client 引起的。 Google 要求明确指定本地化。可能对于英语本地化来说,它总是默认工作。如果将 &language=ru
附加到 url,它将正常工作。
关于java - org.apache.http.client. Fluent 损坏 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40532561/