微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

为什么 http 代理中间件在 React 中不起作用?

如何解决为什么 http 代理中间件在 React 中不起作用?

这是我的 setupProxy.js:

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

module.exports = (app) => {
    app.use(
        'http://localhost:8000',createProxyMiddleware({
            target: 'https://my-website.com',// Should request this url
            changeOrigin: true,})
    );
};

这就是我调用 API 的方式:

makeAPICall = (method,headers,data) => {
    let url = new Url('http://localhost:8000/api/get-data');
    let requestOptions = {
        method,'body': data
    }
    return fetch(url,requestOptions);
}

但是 API 调用将转到 localhost 而不是我在 setupProxy 中提到的那个。

我知道在使用代理中间件时这不是调用 apis 的正确方法,我们只需要在 app.use 中提供一个简单的字符串,如 '/api1'。但是我不允许更改 url,只是想将它们重新路由到新的 api。

在这里做错了什么?

编辑:这就是我调用 makeAPICall 函数的方式:

headers = {
    'Content-Type': 'application/json','Authorization': `Token ${user.auth_token}`
}
makeAPICall('POST',payload).then(data => handleData(data));

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。