Node / Express没有响应POST

时间:2014-03-31 09:56:41

标签: mysql node.js angularjs express

我有一个AngularJS前端与Node / Express / MySQL后端通信,除了POST请求之外,所有请求都运行正常,这是我的Angular Code:

var Data = $resource('http://127.0.0.1:9001/api/data_user');
var newData = new Data({'data_id': data_id});
newData.test = 'whatever';
newData.$save(function (data) {
  console.log(data);
});

我已经采取了我常用的调试步骤,删除所有代码,直到某些工作正常,但即使这样也无效(来自客户端):

app.post('/api/:table', function (req, res) {
  res.send(200);
});

我以前在那里有一个MySQL更新语句,它正在正确执行(有错误检查等),但是前端只是等待响应来了:

(Chrome Dev工具): data_user / API POST (待定) 未决

令人烦恼的是,CURL工作正常:

$ curl -i -X POST http://127.0.0.1:9001/api/data_user --data '{}' -H "Content-Type: application/json"
HTTP/1.1 200 OK
X-Powered-By: Express
Content-Type: text/plain
Content-Length: 2
Date: Mon, 31 Mar 2014 09:54:21 GMT
Connection: keep-alive

有没有人有任何想法?如果需要,可以发布更多代码

1 个答案:

答案 0 :(得分:1)

您是将您的页面视为127.0.0.1还是localhost?您可能正在使用CORS CORS。这可以解释为什么cURL有效但如果您将页面视为“localhost”但发布到127.0.0.1

,则页面的POST请求不起作用