当前位置: 首页 > 知识库问答 >
问题:

使用http代理中间件响应应用程序浏览器代理

白越
2023-03-14

我有代理反应应用程序的问题。目标:我有两个反应应用,第一个应用在localhost:3000,第二个在localhost:3001。我想要什么?=

<a href="/app2">
<button>Second App Open</button>
</a>

然后url将从localhost:3000更改为localhost:3000/app2,第二个react应用程序将显示url localhost:3001中包含的内容。

我导入了http代理中间件库,并创建了src方向文件setupProxy。js和内部:

const {createProxyMiddleware} = require("http-proxy-middleware");

module.exports = function(app) {
    app.use(
        createProxyMiddleware('/app2',{
            target: 'http://localhost:3001',
            changeOrigin: true,
            prependPath: false,
            secure: false,
            logLevel: 'debug',
            ws:true
        })
    );
app.listen(3000)
};

有人能帮我吗?

我还在setupProxy中尝试了这段代码。js:

const express = require('express')
const {createProxyMiddleware} = require("http-proxy-middleware");
app = express()
    app.use(
        createProxyMiddleware('/app2',{
            target: 'http://localhost:3001',
            changeOrigin: true,
            prependPath: false,
            secure: false,
            logLevel: 'debug',
            ws:true
        })
    );
app.listen(3000)

但是我收到了需要(...)不是函数的错误,或者表达式不是函数的错误,当我把表达式输入{}时,也会发生错误。

共有1个答案

李兴为
2023-03-14

我知道很晚了,我也遇到了同样的问题。保留对我有用的东西,这样其他人就可以尝试一下。此代码针对使用create-react-app创建的反应应用进行测试。

我代理了这个endpoint-https://services.odata.org/V2/Northwind/Northwind.svc/Customers?$format=json

设置代理。js

const { createProxyMiddleware } = require('http-proxy-middleware');
module.exports = (app) => {
    app.use(createProxyMiddleware('/api2', {
        target: 'https://services.odata.org/V2/Northwind/Northwind.svc/',
        changeOrigin: true,
        pathRewrite: { '^/api2': '' }
    })
    );
}

你的js文件

triggerCORSCall() {
    axios.get(`/api2/Customers?$format=json`)
      .then(response => {
        alert('Success');
      }).catch(error => {
        alert('Failure');
        console.log(error);
      })
  }
 类似资料:
  • 我在我的反应应用程序中实现超文本传输协议代理中间件,我的设置roxy.js路径不识别。下面是我的代码,如果我做错了什么,请让我知道。 应用组件 setupProxy.js 输出

  • 我正在尝试用JMeter学习负载测试(非常新)。使用该教程在JMeter网站和另一个youtube教程上构建一个Web测试计划,我创建了一个HTTP GET请求来访问www.google.com/,但是我得到了以下结果: 这是我的要求:链接到图像,因为我还没有10个声誉 环顾四周,其他人正在遇到此问题,但他们的问题是在 250 个用户之后: 响应代码: 非 HTTP 响应代码: java.net.

  • 我正在用Cordova和Ionic编写一个混合应用程序。我的问题是,我想通过http请求访问服务器,我需要更改设备的用户代理来传递密钥。 但当我查看服务器的日志时,用户代理没有改变: “GET /service HTTP/1.1” - “Mozilla/5.0 (Macintosh;Intel Mac OS X 10_10_1) AppleWebKit (KHTML, like Gecko) Ch

  • 使用Java进行一个简单的“delivery_quotes”调用进行测试,返回HTTP响应代码-403 我正在使用的客户ID和测试API密钥是正确的。任何帮助!

  • 我正在jMeter中执行负载测试,其中有两个线程组,每个线程组都有50个用户,上升周期为60秒。使用Blazemeter,我记录了一个填写和提交表格的会话,然后稍微修改了一下。其中一组是使用POST方法登录,然后提交表单,另一组是匿名用户填写的。当我运行测试时,我遇到了错误: 响应代码:非HTTP响应代码:org.apache.HTTP。ConnectionClosedException响应消息: