我希望当用户在自动填充搜索中输入内容时,来自Google服务器的数据只会与特定国家/地区相关。
我通过Node.js中的API调用他们的web服务,如下所示:
var headers = {
'User-Agent': 'Super Agent/0.0.1',
'Content-Type': 'application/x-www-form-urlencoded'
};
// Configure the request
var options = {
url: "https://maps.googleapis.com/maps/api/place/autocomplete/json",
method: 'POST',
headers: headers,
qs: {
key: gkey,
input: input,
types: ['(cities)'],
componentRestrictions: {country: 'il'}
}
};
// Start the request
request(options, function (error, response, body) {
// returning the body to the frontend
});
请注意,我试过玩这个,但没有任何作用。 我能够看到全球的结果。
我试图搜索这个,但没有解决这个问题。
答案 0 :(得分:1)
Google Maps API网络服务应该与GET方法一起使用,而不是POST方法。应该与POST一起使用的唯一Web服务是Geolocation API。
您应该将代码更改为
var headers = {
'User-Agent': 'Super Agent/0.0.1',
'Content-Type': 'application/x-www-form-urlencoded'
};
// Configure the request
var options = {
url: "https://maps.googleapis.com/maps/api/place/autocomplete/json",
method: 'GET',
headers: headers,
qs: {
key: gkey,
input: input,
types: ['(cities)'],
componentRestrictions: {country: 'IL'}
}
};
// Start the request
request(options, function (error, response, body) {
// returning the body to the frontend
});
我希望这有帮助!