Узел обратного прокси JS - POST выбрасывает ошибку 404 - PullRequest
0 голосов
/ 23 января 2019

У меня есть следующий узел js server:

var express  = require('express');
var app      = express();
var httpProxy = require('http-proxy');
var apiProxy = httpProxy.createProxyServer();
var serverOne = 'http://<address>:<port>/sap/opu/odata/SAP/Z_ATTENDANCE_SRV/';

app.use(express.static('webapp'));
app.use(express.static('./'));

app.get("/*", function(req, res) {
    console.log('redirecting to Server1');
    apiProxy.web(req, res, {target: serverOne});
});
app.listen(3000);

При использовании запроса GET, например localhost:3000/AttendanceSet, он работает нормально.Но когда я вызываю POST-запрос типа localhost:3000/AttendanceSet, я получаю следующую ошибку:

<code>The following problem occurred: HTTP request failed404,Not Found,<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>Error</title>
</head>
<body>
<pre>Cannot POST /AttendanceSet
-

Как мне изменить код сервера, чтобы он работал?Спасибо.

1 Ответ

0 голосов
/ 23 января 2019

Попробуйте с app.all, чтобы обрабатывать все различные глаголы HTTP одним и тем же обработчиком.

app.all("/*", function(req, res) {
    console.log('redirecting to Server1');
    apiProxy.web(req, res, {target: serverOne});
});
...