Проблема маршрута нестандартного DNS API Heroku в Node.js - PullRequest
0 голосов
/ 25 апреля 2019

У меня есть настроенный домен в Heroku, который работает нормально. Я могу получить доступ к своему сайту, используя как имя приложения, так и собственный домен. Я могу получить доступ к маршруту, используя мой стандартный URL-адрес Heroku, но не используя собственный домен.

Например:

Работает:

https://{myappname}.herokuapp.com
https://{myappname}.herokuapp.com/callback
https://{customdomain}.com

Не работает:

https://{customdomain}.com/callback

Конфигурация сервера:

const express = require("express");
const path = require("path");;
const callback = require("./callback");
const app = express();

// Body parser middleware
app.use(bodyParser.urlencoded({ extended: false }));
app.use(bodyParser.json());

// Serve static assets if in production
 if (process.env.NODE_ENV === "production") {
  app.use("/callback", callback);

// Set static folder
  app.use(express.static("client/build"));

  app.get("*", (req, res) => {
   res.sendFile(path.resolve(__dirname, "client", "build", "index.html"));
 });
}

// Init server/port
const port = process.env.PORT || 5000;

app.listen(port, () => console.log(`Server running on port ${port}`));

1 Ответ

0 голосов
/ 25 апреля 2019

Я понял это, это было довольно просто, и я чувствую себя глупо, однако я отвечу здесь на случай, если у кого-нибудь когда-нибудь возникнет такая же проблема.

Проблема:

У меня был маршрут / компонент React под названием Callback. Этот компонент React вызывал маршрут Node.js, также называемый Callback, который обрабатывает информацию, а затем перенаправляет на новый маршрут / компонент React.

Простым решением было изменить маршрут / компонент React на callbackPage, оставив мой маршрут Node.js как Callback.

Итак, в итоге, у меня был URL веб-страницы с тем же именем, что и у маршрута API сервера. Когда я посетил эту страницу, вместо отображаемой страницы был запущен маршрут API, который практически ничего не делал и по тайм-ауту. Я все еще не понимаю, почему он работает с URL моего приложения, но не с моим пользовательским доменом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...