【发布时间】:2018-01-18 15:40:35
【问题描述】:
我是 NodeJS 的新手,并尝试使用 npm spotcrime 包通过 ajax 调用单击按钮从用户输入位置获取犯罪数据。这是包的npm文档页面上给出的包的用法。
var spotcrime = require('spotcrime');
// somewhere near phoenix, az
var loc = {
lat: 33.39657,
lon: -112.03422
};
var radius = 0.01; // this is miles
spotcrime.getCrimes(loc, radius, function(err, crimes){
});
单独运行并返回正确的犯罪 json 数据时效果很好。但是我不明白如何通过单击按钮的 ajax 调用来调用它。任何见解都会非常有帮助。在此先感谢:)
更新
这是我的服务器代码
var express = require('express');
var app = express();
var dataFile = require('./data/data.json');
var reload = require('reload');
var path = require('path');
app.set('port', process.env.PORT || 3000);
app.set('appData', dataFile);
app.set('view engine', 'ejs');
app.set('views', __dirname + '/views');
app.use(express.static(path.join(__dirname, '/public')));
app.use(require('./routes/index'));
app.use(require('./routes/information'));
app.use(require('./routes/spotcrime'));
var server = app.listen(app.get('port'), function(){
console.log('Go to http://localhost:' + app.get('port')+ ' on your
browser');
});
reload(app);
这里是 spotcrime.js 文件
var express = require('express');
var router = express.Router();
var spotcrime = require('spotcrime');
router.get('/spotcrime', function(request, response){
var loc = {
lat: 33.39657,
lon: -112.03422
};
var radius = 0.01; // this is miles
spotcrime.getCrimes(loc, radius, function(err, crimes){
response.send(crimes);
});
});
module.exports = router;
我尝试了很长一段时间,但没有任何结果。请提出任何出路
【问题讨论】:
-
创建了httpserver?
-
是的,并且也更新了代码。你可以看看上面的更新
标签: javascript jquery node.js ajax express