expressjs POST响应不起作用

时间:2012-09-19 20:10:31

标签: jquery post express

也许它很简单但下面的代码不起作用,expressjs服务器正在接收请求和数据,但jQuery ajax调用没有从服务器接收响应

这是服务器代码

 app.get('/', function(req, res){
  console.log('request for /');
  res.send('hello there!');    
 });

这是jQuery请求

  $.ajax({
    type: 'GET',
    url: 'http://localhost:3000/',
    success: function(data) {
        alert(data);
    }
  });

这是expressjs app配置

 app.configure(function(){
  app.set('port', /*process.env.PORT ||*/ 3000);
  app.set('views', __dirname + '/views');
  app.set('view engine', 'jade');
  app.use(express.favicon());
  app.use(express.logger('dev'));
  app.use(express.bodyParser());
  app.use(express.methodOverride());
  app.use(app.router);
  app.use(express.static(path.join(__dirname, 'public')));
 });  

编辑:拿出Json的东西,无论如何都存在问题

2 个答案:

答案 0 :(得分:2)

解决方案是允许跨域标头

      res.header("Access-Control-Allow-Origin", "*");
      res.header("Access-Control-Allow-Headers", "X-Requested-With"); 

答案 1 :(得分:0)

问题是您没有在服务器代码中结束连接,如下所示。在app.get('/',...

res.end('hello there');

请注意结束而不是发送。