节点js ajax发布请求
它除了Node js和AJAX POST的错误之外,Node请求不能检查表单数据是否正确处理,总是会掉到错误函数,下面的任何解决scheme都要检查AJAX NODE JS CODE
$("#submit_btn").click(function() { $.ajax({ url: '/process_add', type: 'POST', dataType: "json", data: $('#process_form').serializeArray(), success:function(data) { alert('done'); }, error: function(errorThrown,data) { alert('Error'); } }); }); router.post('/process_add', function(req, res, next) { var item = { name: req.body.name, content:req.body.content }; mongo.connect(url, function(err, db) { assert.equal(null, err); db.collection('data_collection').insertOne(item, function(err, result) { assert.equal(null, err); console.log('Process added'); db.close(); }); }); });
你需要为该api添加('/')根目录到Ajax请求.post has(/ process_add)提示该api不是root,所以如果index是root('index / process_add)
您的AJAX请求“/ process_add”将指向您的URL的根目录。例如,abc.com是您的域,此处的端点将是“abc.com/process_add”。 确保你的路由器存在于app的“/”的根引用中。像这样的东西
app.js
var index = require('./routes/index'); app.use('/',index);
路线/ index.js
router.post('/process_add', function(req, res, next) { var item = { name: req.body.name, content:req.body.content }; mongo.connect(url, function(err, db) { assert.equal(null, err); db.collection('data_collection').insertOne(item, function(err, result) { assert.equal(null, err); console.log('Process added'); db.close(); }); }); });
快乐编码!
- RESTful Express Mongoose&Backbone – Backbone model.remove()不起作用
- Nodejs,expressjs – 如何提供延迟响应
- forbiddenError / 403 Ajax Express Csurf – 如何正确使用Csurf?
- Loopback:通过ajax发布一个对象数组
- 我怎样才能从一个长期的asynchronous过程接收实时更新?
- Node.js:发送多个AJAX请求来开始后台作业队列
- (ab)使用node.js作为超级快速轮询和ajax服务器来更新数据库(类似于Google Spreadsheet方法)
- Javacript到节点
- 如何在nodejs中处理同一个get函数的多个调用?