nodeJS无法拿到前端发送到的数据

aboutblank329 2016-04-13 05:23:25
代码如下,一直都是undefined不知道为什么。用了POST方法
var test = {
test: 1,
test2:2,
test3:3
};
$.ajax({
url:'http://localhost:3000/test',
type:"POST",
dataType:"jsonp",
data:test,
success:function(data){},
error:function(){alert('error')}
});



因为nodejs服务器还做了其他工作所以比较长

module.exports = require('./lib/express');
var express = require('express');
var fs = require('fs');
var app = express();
var http =require('http');
var server=http.createServer(app);

var bodyParser = require('body-parser')
var multiparty = require('multiparty')
, util = require('util');

var routes = require('./routes/index');
var jsonParser = bodyParser.json();
var musicData ={};
app.use(express.static(__dirname));

app.post('/test', function(req, res){
var data = req.body;
console.log(data);

});

fs.readFile('./Data/music.json', 'utf8',function(err, data){
if(err) throw err;
musicData = data;
});
app.get('/', function(req, res){
res.send(musicData);

});

app.route('/imgp1')
.all(routes.imgp1);

app.listen(3000);

...全文
798 3 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
顾小林 2016-04-14
  • 打赏
  • 举报
回复
http://yijiebuyi.com/blog/38f1437bf5b43fcf90e6529a81f258f1.html
aboutblank329 2016-04-13
  • 打赏
  • 举报
回复
虽然没有解决不过谢谢楼上TUT
  • 打赏
  • 举报
回复
不懂nodejs,你指定datatype为jsonp,jsonp是一般是get传值,不是post
app.post('/test',这个是不是应该改为app.get('/test',??

自己用浏览器开发工具看发出请求了没有,是普通http请求(指定为jsonp,jq不同版本会判断跨域了会用get,而不是post,即使指定了type为post)还是xhr请求

52,792

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 Ajax
社区管理员
  • Ajax
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧