Can';不要在Heroku上运行express站点时进行ajax POST调用

Can';不要在Heroku上运行express站点时进行ajax POST调用,ajax,node.js,heroku,express,Ajax,Node.js,Heroku,Express,我最近在heroku上部署了一个express应用程序,在本地运行良好。现在,在heroku上,我进行ajax post调用的部分由于500个内部服务器错误而中断 在我的JS中,我的POST call如下所示: $.post('/api/', { 'input': 'input' }, function(data) { if (!data) { return console.log('success'); } else { return console.log('fa

我最近在heroku上部署了一个express应用程序,在本地运行良好。现在,在heroku上,我进行ajax post调用的部分由于500个内部服务器错误而中断

在我的JS中,我的POST call如下所示:

$.post('/api/', {
  'input': 'input'
}, function(data) {
  if (!data) {
    return console.log('success');
  } else {
    return console.log('failed');
  }
});
express对它的处理如下(我在这里抽象):

在谷歌搜索之后,我怀疑这可能与访问控制有关,所以我在我的express应用程序中添加了一些代码,启用了来自各地的访问控制源。这停止了500个错误,反而导致post挂起,然后在30秒后超时

我认为这与Heroku有关,因为它在本地运行良好。任何建议都会非常有用

**编辑**


我做了更多的挖掘,结果发现是行
var=req.body.input
造成了所有的麻烦。如果我删除这个,我就不会看到500错误。另一个线索是,在500错误的分解中,似乎有某种跨域发送在进行——jquery在错误的第一行声明:
l.cors.a.crossDomain.send
。因此,这里显然存在一些问题,我非常确定这与我编写ajax调用的方式无关……

您用来制作帖子的代码可能有问题,尝试用方法post制作表单,如下图所示,看看它是否仍然不起作用。我试过上面的方法,似乎效果不错。但我有点困惑,为什么我的原始代码在本地可以正常工作,但在heroku上不行……如果你有时间,Noah,你介意看看我在问题中提供的附加信息吗。谢谢
app.route('/api/')
  .post(function (req, res) {
    var input = req.body.input;

    x.doSomething(input,function (err,data) {
      res.send(err);
    }

  });