【发布时间】:2019-06-27 00:09:43
【问题描述】:
我是 Node 新手,我似乎无法完成我的请求。我只是试图通过将客户端的位置发送到服务器并将其显示到服务器日志中来创建服务器和客户端之间的基本握手。我不确定为什么我无法将数据显示到日志中。
索引.js
const express = require('express');
const app = express();
app.listen(8080, () => console.log('listening at 8080'));
app.use(express.static('public'));
app.use(express.json({limit: '1mb'}));
app.post('/api',(request,response) => {
console.log('I got a request!');
console.log(request.body);
});
索引.html
<script>
if('geolocation' in navigator) {
console.log('geolocation is avaliable');
navigator.geolocation.getCurrentPosition(async position => {
const lat = position.coords.latitude;
const lon = position.coords.longitude;
console.log(lat,lon);
document.getElementById('latitude').textContent = lat;
document.getElementById('longitude').textContent = lon;
const data = {lat, lon};
const options = {
method: 'POST',
header:{
'Content-Type':'application/json'
},
body: JSON.stringify(data)
};
fetch('/api',options);
});
} else{
console.log('geolocation is not avaliable');
}
</script>
一些注意事项。请求似乎已完成,开发者控制台中未显示任何错误。
服务器信息: -[nodemon] 由于更改而重新启动...
-[nodemon] 起始节点index.js
-在 8080 收听
-我有一个请求!
-{}
【问题讨论】:
-
您是否尝试过对请求正文进行字符串化?
-
我该怎么做?
-
JSON.stringify(request.body) -
Uncaught (in promise) ReferenceError: request is not defined是我得到的响应错误 -
@Harsh 什么版本的快递?同一个你从那个例子那里得到的?
标签: javascript html node.js