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 { } };
此问题解决。
标签:http,contractTool,ip,若依,api,file,true,第三方 From: https://www.cnblogs.com/shyhuahua/p/18382186