Внутренняя ошибка сервера Heroku при отправке формы - PullRequest
0 голосов
/ 16 апреля 2020

Я работаю над node.js веб-сайтом, который мы используем в Heroku. Но у меня есть проблема. Всякий раз, когда я отправляю форму с веб-сайта, он прекрасно перенаправляется, но вместо того, чтобы показывать указанный файл, он показывает только «Внутренняя ошибка сервера». Но всякий раз, когда я помещаю "/ contact" в URL после моего домена, он работает совершенно нормально. Кто-нибудь знает, в чем проблема? Большое спасибо.

Индекс. js файл (файл node js и основной файл js):

const express = require('express')
const path = require('path')
const PORT = process.env.PORT || 5000
var stripe = require("stripe")("sk_test_bOSMKplPuyuTYFN6somV2Ywf00be7BKbS7");
var hbs = require("hbs");
var bodyParser = require("body-parser");

var app = express();

app.use(express.static(path.join(__dirname, 'public')))
app.set('views', path.join(__dirname, 'views'))
app.set('view engine', 'hbs')
app.get('/', (req, res) => res.render('pages/index'))
app.get('/banner', (req, res) => res.render('pages/banner'))    


email = '';
message = '';
subject = '';
app.post('/contact', (req, res) => {
  if(req.body.email != null){
    email = req.body.email;
  }
  if(req.body.subject != null){
    subject = req.body.subject;
  }
  if(req.body.message != null){
    message = req.body.message;
  }
  if(email != '' && message != '' && subject != ''){
    sendEmailToBusinessContact(email, subject, message);
    res.redirect('/#contact')
  }
});

Основной код html (index.hbs) :

<form action="/contact" method="post">
    <div class="contact-input-container">
         <div>
             <input name="email" class="contact-input contact-email" type="email" placeholder="name@gmail.com" autocomplete="off" required>
         </div>
         <div>
             <input name="subject" class="contact-input contact-subject" type="text" placeholder="subject.." autocomplete="off" required>
         </div>
         <div>
             <textarea name="message" class="contact-input contact-message" type="text" placeholder="message.." required></textarea>
         </div>
    </div>
    <button type="submit" class="contact-btn">Send</button>
 </form>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...