@sirinotapple

Как провести get запрос при connect-history-api-fallback?

Здравствуйте, почему при использовании app.use(history()); сервер не отзывается на отправку формы методом get?
server.js
var http = require("http");
var express = require("express");
const history = require("connect-history-api-fallback");

var port = 3000;

let app = express();
app.use(express.json());
app.set("port", port);

//app.use(history()); //когда незакоментировано  console.log("get reques"); не появляется

app.use(express.static("static"));

app.get("/requestget", function (request, response) {
  console.log("get reques");
  response.send("express");
});
app.post("/requetspost", function (request, response) {
  console.log("post reques");
  response.send("express");
});

var server = http.createServer(app);
server.listen(port);

static/index.html
<!DOCTYPE html>

<body>
	<form action="requestget" method="get">
		<input type="text">
		<button>Sendget</button>
	</form>
	<form action="requestpost" method="post">
		<input type="text">
		<button>Sendpost</button>
	</form>
</body>
</html>

Как я могу отравлять данные с клиента методом get при app.use(history()); или в таком случае правильно только post?
  • Вопрос задан
  • 73 просмотра
Решения вопроса 1
black1277
@black1277
Вольный стрелок
Я удивляюсь... Вы подключаете мидлвар, который перехватывает GET запросы и подставляет вместо них index.html (так написано в документации к библиотеке), а потом удивляетесь, что GET запрос не проходит. Если все же, нужно обработать GET запрос иначе, то можно указать опции перенаправления. Вот пример из доков
history({
  rewrites: [
    { from: /\/soccer/, to: '/soccer.html'}
  ]
});
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы