如何判断为什么我的节点应用程序在Heroku上崩溃了? (HTML,Stripe,Heroku,NodeJS)

时间:2017-11-15 16:26:15

标签: html node.js express heroku stripe-payments

所以,我开发了一个网站(HTML),其中有一个名为Checkout的Stripe嵌入式支付表单。当您访问该网站时,它会提示您输入您的信用卡信息,以便结帐表格正常运行。 我遇到的问题是在创建令牌后处理令牌。

我对网络开发非常陌生,我之前从未编写过服务器代码,请耐心等待。 我一直关注指南(Process payments with Node, Vue, Stripe& How to set up Stripe payments with Node.js)和有关标记化的条带文档,以使用服务器端代码(Stripe Checkout)创建费用

我知道我必须设置Heroku来处理收费,所以我创建了一个帐户并从我的终端设置了一个应用程序。我创建了一个新目录,其中包含所需的模块(stripe,express和bodyParser),我在server.js文件中有这个代码:

enter image description here

它成功部署到Heroku但崩溃了。这是在控制台中返回的内容:

enter image description here

我做错了什么?任何帮助都会有很大的帮助。

1 个答案:

答案 0 :(得分:1)

你错过了一个重要的部分:

// Start the server
app.listen(port, function(){
  console.log('Server listening on port ' + port)
});

您似乎无法在应用程序中启动服务器。这应该位于 server.js 的底部。您还必须记住设置端口:

var port = process.env.PORT || 3000;

当然高于app.listen

我无法确定是否会修复所有您的错误,但您必须先从启动服务器开始。

另外,请记住检查回调中的错误。在create的回调中,您没有这样做。 E.g。

if (err){
    console.error(err);
    res.json({ error: err, charge: false });
} else {
    // send response with charge data
    res.json({ error: false, charge: charge });
}

您是否正在res.send(),无论是否有错误。我怀疑这与Heroku错误有什么关系。