我正在构建一个简单的nodejs应用程序并在客户端使用灰尘。我试图从用户位置获取lat,lng并想要进行API调用 使用node js express框架。所以我从地理位置api得到客户端的lat,lng。现在我想将lat,lng传递给控制器,以便我可以查询 用于显示用户内容的API。对不起,如果这是非常基本的。我是nodejs和dust的新手。到目前为止我尝试了什么? 我尝试使用jquery提交表单 2.设置一些dom值等
$(document).ready( function() {
var options = {
enableHighAccuracy: true,
timeout: 5000,
maximumAge: 0
};
function success(pos) {
var crd = pos.coords;
document.querySelector("[name='latitude']").value = crd.latitude;
document.querySelector("[name='longitude']").value = crd.longitude;
console.log('Latitude : ' + crd.latitude);
console.log('Longitude: ' + crd.longitude);
};
function error(err) {
console.warn('ERROR(' + err.code + '): ' + err.message);
};
navigator.geolocation.getCurrentPosition(success, error, options);
});
控制器代码:
module.exports = function (router) {
router.get('/', function (req, res) {
//How do I pass the lat, lng from the client to controller?
});
}
答案 0 :(得分:2)
只需在客户端对路径路径进行ajax调用,然后在路由器回调中获取已发送的数据
客户端
//Make the ajax request
$.post("/postLatLng",{lat:latVariable,lng:lngVariable});
节点
//hanlde the post request to /postLatLng
router.post('/postLatLng', function (req, res) {
var lat = req.param("lat");
var lng = req.param("lng");
//...
});