Rranzhuang880发布于 7 年前
026570
想用nodejs实现数据接收并推送到网页,但 url.parse( ).path却无法使用。请各位大佬帮帮萌新。 代码如下(数据接收部分省略)
var http = require('http');
var fs = require('fs');
var url_parser = require('url');
var querystring = require('querystring');
var man = 0;
var car = 0;
var server=http.createServer(function(req,res)
{
var post = '';
var raw_url = req.url;
var url = url_parser.parse(raw_url,true);
var pathname = url.pathname;
var path = url.path; //**url.path无法使用**
//响应OneNet发来的请求,接收数据
if(pathname == '/dataPort')
{
//已省略
}
//
if(path == '/index')
{
res.writeHead(200,{'Content-Type':'text/html'});
fs.readFile('./index.html','utf-8',function(err,data)
{
res.write(data);
res.end();
});
}
//响应'/?test=ajax'
else if(path == '/?test=ajax')
{
console.log('start ajax');
res.writeHead(200,{'Content-Type':'text/plain','Access-Control-Allow-Origin':'*'});
var jlatitude_json = {"man":man,"car":car};
var str = JSON.stringify(jlatitude_json);
res.write(str);
res.end();
}
});
server.listen(80);
console.log('server running at port 80');
code \n```
html ajax部分代码
```js\n
<script type="javascript">
//更新数据
var car=0;
var man=0;
//发送ajax请求
function start(){
$.ajax({
url:'http://47.102.122.37:80/',
dataType:'json',
type:'get',
data:{test:'ajax'},
success:function(data)
{
function UpdateMAC(data)
{
car = data.car;
man = data.man;
document.getElementById('man').value = man;
document.getElementById('car').value = car;
} //更新
}
})
}
/*
每隔1秒发送一次经纬度数据请求
*/
setInterval(function()
{
start();
},3000);
</script>
code \n```