使用 node.js google 地图客户端库
Using the node.js google maps client library
我认为这与我在 javascript 方面的经验有限有关。
我正在使用 Google 的 node.js 客户端库,在此处找到 - https://github.com/googlemaps/google-maps-services-js
该示例显示了如何创建客户端对象
var googleMapsClient = require('@google/maps').createClient({
key: 'your API key here'
});
然后如何 运行 地理编码请求并打印出结果:
// Geocode an address.
googleMapsClient.geocode({
address: '1600 Amphitheatre Parkway, Mountain View, CA'
}, function(err, response) {
if (!err) {
console.log(response.json.results);
}
});
我需要做的是从文件中读取地址列表并为所有地址构建一个对象数组。
我希望我的代码按照以下方式执行某些操作:
create address-objects array
create a client object
open the text files
for each line in text files
geocode the line(address)
add the address and the results into an object and add it to the address-objects
我不明白是否有 googleMapsClient.geocode returns 东西,如果是,我该如何访问它?我应该按照 :
将它设置为某个变量吗
var gc_results = googleMapsClient.geocode(param , ...)
希望我说清楚了,提前致谢
乔纳森
您可以在 callback
函数中访问响应。
所以,如果你想让每个地址都调用这个函数,你可以先定义一个空数组:
var gc_results = [];
然后你应该为你从文件中得到的每个地址调用这个函数,类似于这样:
addresses.forEach(function(){
googleMapsClient.geocode({
address:
}, function(err, res) {
gc_results.push(res.json.results);
})
})
在此之后,您将拥有包含您需要的信息的 gc_results
数组
我认为这与我在 javascript 方面的经验有限有关。 我正在使用 Google 的 node.js 客户端库,在此处找到 - https://github.com/googlemaps/google-maps-services-js 该示例显示了如何创建客户端对象
var googleMapsClient = require('@google/maps').createClient({
key: 'your API key here'
});
然后如何 运行 地理编码请求并打印出结果:
// Geocode an address.
googleMapsClient.geocode({
address: '1600 Amphitheatre Parkway, Mountain View, CA'
}, function(err, response) {
if (!err) {
console.log(response.json.results);
}
});
我需要做的是从文件中读取地址列表并为所有地址构建一个对象数组。
我希望我的代码按照以下方式执行某些操作:
create address-objects array
create a client object
open the text files
for each line in text files
geocode the line(address)
add the address and the results into an object and add it to the address-objects
我不明白是否有 googleMapsClient.geocode returns 东西,如果是,我该如何访问它?我应该按照 :
将它设置为某个变量吗var gc_results = googleMapsClient.geocode(param , ...)
希望我说清楚了,提前致谢 乔纳森
您可以在 callback
函数中访问响应。
所以,如果你想让每个地址都调用这个函数,你可以先定义一个空数组:
var gc_results = [];
然后你应该为你从文件中得到的每个地址调用这个函数,类似于这样:
addresses.forEach(function(){
googleMapsClient.geocode({
address:
}, function(err, res) {
gc_results.push(res.json.results);
})
})
在此之后,您将拥有包含您需要的信息的 gc_results
数组