若依平台增加对第三方ip请求配置

1.使用的是vue3若依管理平台,部署到测试环境后,

我的测试环境ip:http://42.194.232.89:8569/

在页面中,需要请求另一个ip:http://134.175.80.213:8505/

本地代理是生效的,部署到测试环境请求报错405,被拦截了,如图

 

这时候要修改nginx配置:

对这个ip增加一个loaction:例如加一个路径 /contractTool/

 

     location /contractTool/ {
           proxy_pass http://134.175.80.213:8505/ ;
     }

 

2. 对应前端vue.config.js修改代理:/contractTool/

// vite 相关配置
server: {
    port: 8366,
    host: true,
    open: false,
    proxy: {
        '/dev-api': {
            target: 'http://42.194.232.89:8569',
            changeOrigin: true,
            // rewrite: (p) => p.replace(/^\/dev-api/, ''),
        },
        '/contractTool/': {
            target: 'http://134.175.80.213:8505/',
            changeOrigin: true,
            rewrite: (p) => p.replace(/^\/contractTool\//, ''),
        },
        '/prod-api': {
            target: 'http://175.178.195.12:8166',
            changeOrigin: true,
            rewrite: (p) => p.replace(/^\/prod-api/, ''),
        },
    },
},

页面中调用接口:

export const uploadAll = async (file) => {
    const formData = new FormData();
    if (file) formData.append('files', (file?.[0].name, file?.[0].raw));
    try {
        const result = await axios.post(
            '/contractTool/',
            formData,

            {
                headers: {
                    Authorization: `Bearer ${apiKey}`,
                    'Content-Type': 'multipart/form-data',
                },
            },
        );
        // 文件上传后 转换的文本
        return JSON.stringify(result.data);
    } catch (error) {
        console.error('请求错误:', error);
    } finally {
    }
};

此问题解决。

 

posted @ 2024-08-27 10:39  行走的蒲公英  阅读(134)  评论(0编辑  收藏  举报