0

我正在尝试配置代理中间件 koa-proxy。它适用于所有 GET 请求,但带有正文的 POST 请求无法到达实际的 API。

let koa = require('koa');
let staticServe = require('koa-static');
let bodyParser = require('koa-bodyparser');
let config = require('./config');
let proxy = require('koa-proxy')({ host: 'config.API_URL' });

let app = koa();

app.use(staticServe(config.staticPath));
app.use(bodyParser());

app.use(proxy);

app.listen(config.port);
console.log(`Listening on port ${config.port}`);

我应该如何配置它以便能够从应用程序发出所有请求,localhost然后将其定向到带有正文的 API URL 并正确处理?

4

2 回答 2

1

出色地。您应该通过 koa-proxy 确认您的原始数据和数据代理的数据结构。

在我的情况下,原始数据内容类型是“x-www-urlencoded”,但是由 koa-proxy 代理,它变成了一个 [object Object],所以它不能正确代理。并且无法发送请求。

于 2017-08-23T03:55:57.880 回答
1

正如@zeronone 所建议的那样,导致问题的是正文解析器。删除它,它会工作得很好。

于 2020-09-25T14:13:47.547 回答