Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/35.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何将信息从浏览器移动到服务器端代码?_Javascript_Node.js_Express_Node Modules - Fatal编程技术网

Javascript 如何将信息从浏览器移动到服务器端代码?

Javascript 如何将信息从浏览器移动到服务器端代码?,javascript,node.js,express,node-modules,Javascript,Node.js,Express,Node Modules,我正在尝试使用Express和Node.js制作一个简单的天气应用程序。为了做到这一点,我需要得到的纬度和经度的用户自动。我知道如何通过浏览器使用HTML5 Geolocation()实现这一点。但是,我无法从服务器端Express代码中执行此操作。如何创建从浏览器获取纬度和经度的客户端代码,然后将其发送到服务器端代码?您可能会使用Ajax调用从浏览器Javascript代码向服务器发送lat/long。在现代浏览器中,可以使用发送Ajax调用。Ajax的旧接口是 例如: fetch('/api

我正在尝试使用Express和Node.js制作一个简单的天气应用程序。为了做到这一点,我需要得到的纬度和经度的用户自动。我知道如何通过浏览器使用HTML5 Geolocation()实现这一点。但是,我无法从服务器端Express代码中执行此操作。如何创建从浏览器获取纬度和经度的客户端代码,然后将其发送到服务器端代码?

您可能会使用Ajax调用从浏览器Javascript代码向服务器发送lat/long。在现代浏览器中,可以使用发送Ajax调用。Ajax的旧接口是

例如:

fetch('/api/setLatLong', {
  method: 'POST',
  body: JSON.stringify(latLongData)
}).then(result => {
   // process returned data here
});

在上面的示例中,您可以用希望服务器接收lat/long数据的URL替换
/api/setLatLong
。然后在服务器上编码一条路由以接收该数据。您可能会通过使用cookie或登录会话将其与用户关联,然后可能会将lat/long数据存储在服务器上的用户会话中。

您用谷歌搜索过如何将数据从客户端发送到服务器吗?感谢您的回复。我的浏览器Javascript代码在哪里?它是否只与HTML文件关联?@GabeLevin-它将位于加载到浏览器中的HTML文件的
标记中。而且,Ajax调用通常会在web页面中的某种用户事件上运行(按钮单击、按键、鼠标单击、页面加载等…),因此我的脚本可以正常工作。我得到坐标,然后把它们放在一个看不见的表单中的两个字段中。从那里我的脚本提交表单,从而发送POST请求。我已经确认我的服务器端代码正在接收POST请求,但是如何获取在我的两个字段中找到的数据?@GabeLevin-请参阅示例。