gpt4 book ai didi

google-places-api - 葡萄牙语的Google Place API

转载 作者:行者123 更新时间:2023-12-04 04:41:03 28 4
gpt4 key购买 nike

我正在使用Google的Place API自动填充用户键入的城市名称(网页)。加载了API,并使用语言(pt-BR)作为参数,并且使用葡萄牙语正确填充了文本框,但是执行方法getPlace()时,它将以英语返回结果(国家和行政区_level_1)。

我不确定问题出在Google API,它们翻译成葡萄牙语还是我遗漏的东西。我尝试加载它,将西类牙语(es),英语(en)和意大利语(it)作为语言的参数并按预期工作。

这是我的加载方式:

<script src="https://maps.googleapis.com/maps/api/js?key=[myapikey]&signed_in=true&libraries=places&callback=initAutocomplete&language=pt-BR" async defer></script>

...以及如何根据Google的示例代码获取结果:
// Get the place details from the autocomplete object.
var place = autocomplete.getPlace();

我还使用传递place_id的反向地理编码API,问题是相同的(C#代码)。
    var apikey = "[myserverapikey]";
var requestUri = string.Format("https://maps.googleapis.com/maps/api/geocode/json?place_id={0}&key={1}", place_id, apikey);

var idiomas = new string[] {"pt-BR", "es", "en-us", "it"};

string responseContent = string.Empty;
foreach (var idioma in idiomas)
{
HttpWebRequest request = WebRequest.Create(requestUri) as HttpWebRequest;
request.Headers.Add(HttpRequestHeader.AcceptLanguage, idioma);
HttpWebResponse response = request.GetResponse() as HttpWebResponse;
StreamReader reader = new StreamReader(response.GetResponseStream());

var jsontext = reader.ReadToEnd().Trim();

responseContent += jsontext;

var json = JsonConvert.DeserializeObject<GoogleGeoCodeResponse>(jsontext);


}

return Json(responseContent, JsonRequestBehavior.AllowGet);

我已经检查了文档并支持pt-BR: Google API Supported Languages

最佳答案

巴西葡萄牙语的语言代码是“pt_BR”,而不是“pt-BR”,因此请将链接更改为:

<script src="https://maps.googleapis.com/maps/api/js?key=[myapikey]&signed_in=true&libraries=places&callback=initAutocomplete&language=pt_BR" async defer></script> >

原来,我错了... pt-BR或pt_BR工作。

getPlace不会根据语言返回结果,这是google maps中的现有错误:
https://code.google.com/p/gmaps-api-issues/issues/detail?id=7891

一个棘手的解决方案是读取自动完成输入,因为它会转换为指定的语言。如果使用自动完成搜索框,则可以在其输入文本框中进行查询,它只有一种输入类型的文本..因此,您可以执行以下操作以指定语言获取完整地址:
$("input:text").val()

这将为您提供完整的地址,之后您将必须解析字符串以获取城市,州,国家/地区信息。

关于google-places-api - 葡萄牙语的Google Place API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33179942/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com