为什么此json检索代码无法正常工作?

时间:2018-07-31 11:16:28

标签: javascript json

我正尝试使用纯Javascript从Google的Map API获取信息。为此,我查询给定地址以检索相关信息。我一直在四处搜寻,发现this method,但有些地方不起作用:我用console.log设置的跟踪不会出现在控制台上。

这是我的代码

unique_row

这是我的回叫

product_id

我正在使用“ calle pintor oliet 4 castellon”进行测试,控制台上的日志是:

  

query = calle pintor oliet 4 castellon

     

地址calle pintor oliet 4卡斯特隆

     

formattedAddr calle + pintor + oliet + 4 + castellon

     

url1 http://maps.googleapis.com/maps/api/geocode/json?address=calle+pintor+oliet+4+castellon&sensor=true_or_false

     

pre geocodeFromAddr

     

发布geocodeFromAddr

您可以看到-显然-它从未进入代码的geocodeFromAddr部分。您也可以检查google API网址是否正常运行-完全不返回错误。

有人可以给我指出一些线索吗?

1 个答案:

答案 0 :(得分:0)

如果您要定位的其他任何浏览器都可能需要使用Polyfill进行提取,请在Chrome中尝试此代码。

fetch('https://maps.googleapis.com/maps/api/geocode/json?address=calle+pintor+oliet+4+castellon&sensor=true_or_false')
        .then(res => res.json())
        .then(d => {
            if (d.results && d.results.length) {
                let address_components = d.results[0].address_components;
                let postalCode = {};
                address_components.forEach(addressComponent => {
                    if(addressComponent.types.includes("postal_code")){
                        postalCode = addressComponent;
                    }
                })
                console.log(postalCode);
                console.log('Postal Code:->', postalCode.long_name);
            }
        })