部署后找不到Heroku + Node + Express Route

时间:2016-10-13 20:01:46

标签: jquery node.js express post heroku

将我的应用程序部署到Heroku后,它再也找不到我在Express中设置的API路径了。这段代码在本地完全正常,但是一旦它在Heroku中,我就会得到404 - Page Not Found错误。

这是路由器:

$('form').on('submit', function(e) {
    e.preventDefault();
    $.post('/api/submit', $('form').serialize(), function (data) {
        $('#confirm-modal').modal('show');
    });
});

它是通过jQuery POST提交的

require 'httparty'

body = {
    "apiKey": 'xxx',
    "country": 'IN',
    "currency": 'INR',
    "locale": 'en-GB',
    "originplace": 'DEL',
    "destinationplace": 'BLR',
    "outboundDate": '2016-10-14',
    "adults": 1,
    "locationschema": 'Iata'
}
headers = { 'Content-Type' => 'application/x-www-form-urlencoded', 'Accept' => 'application/json'}

@response = HTTParty.post("http://partners.api.skyscanner.net/apiservices/pricing/v1.0/", :body => body,:headers => headers)
puts @response
puts "Response code #{@response.code}"
puts "Reponse header #{@response.headers['location']}"
@sessionKey = @response.headers['location']

sleep 1

@poll = HTTParty.get(@sessionKey.to_s, query: {apiKey: "xxx"})
puts @poll
puts "Polling #{@poll.parsed_response}"

我也没有看到Herokus日志中的任何错误。我可以在日志中看到它正在点击“/ api / submit”但没有任何反应。

更奇怪的是,我在另一个项目中使用了所有这些完全相同的代码并且工作正常¯_(ツ)_ /¯

任何帮助都会非常感激,因为我的想法已经用完了。

1 个答案:

答案 0 :(得分:0)

我最终只是将它从“/ api / submit”移动到“/ submit”,现在它突然起作用了。不知道为什么会这样,但它解决了这个问题。