【发布时间】:2015-07-25 07:22:25
【问题描述】:
参考 Josh Owens 的 Cityforks 演示,我已经让获取当前位置正常工作,并且我的应用程序没有崩溃,但是当我检查 Robomongo 时,地点集合没有填充数据库。
我已经完全复制了代码:
Places = new Mongo.Collection('places');
Meteor.methods({
'fetchNearbyLocations': function(coords) {
if (Meteor.isServer) {
results = HTTP.get("https://maps.googleapis.com/maps/api/place/nearbysearch/json? location=" + coords.latitude + "," + coords.longitude + "&radius=500&types=food&key=AIzaSyCtfoCAldCEf8hXUlkVUd4UljqKR6W_aF4")
console.log(results)
_(results.data.results).each(function(loc) {
_.extend(loc, {loc: {type: "Point", coordinates: [loc.geometry.location.lng, loc.geometry.location.lat]}})
Places.upsert({id: loc.id}, {$set: loc})
});
}
}
});
关于我当然会更改的 API 密钥,应该使用服务器应用程序的密钥(具有 IP 锁定)还是浏览器应用程序的密钥(具有引用者)?
我确实删除了自动发布,不确定这是否会有所不同?
另外,是否必须在项目中的某个 JS 文件中添加类似下面的内容?
<script type="text/javascript" src="http://maps.google.com/maps/api/js? sensor=false"> </script>
任何帮助将不胜感激。
【问题讨论】:
标签: javascript mongodb google-maps meteor