vue3跨域
在vue3项目中使用跨域
1.代理
server: { port: 8080, // 设置服务启动端口号 open: true, // 设置服务启动时是否自动打开浏览器 cors: true, // 允许跨域 // 设置代理,根据我们项目实际情况配置 proxy: { '/api': { //apiTest是自行设置的请求前缀,按照这个来匹配请求,有这个字段的请求,就会进到代理来 target: 'https://xxxxxx/', // 需要代理的域名 changeOrigin: true, // 是否跨域 rewrite: (path) => path.replace('/api', '') //重写匹配的字段,如果不需要放在请求路径上,可以重写为"" }, '/img': { target: 'https://xxxxxx/', changeOrigin: true, //用于控制请求头中的host值 rewrite: (path) => path.replace('/img', '') }, } },
2.jsonp
const initScript = (setting) => { // var frame = document.createElement("script"); // frame.src = "http://127.0.0.1:3333/api/list?callback=callbacklocation"; // document.body.append(frame); setting.data = setting.data || {}; setting.key = setting.key || "callback"; setting.callback = setting.callback || function () { }; setting.data[setting.key] = "callbacklocation"; window.callbacklocation = function (data) { setting.callback(data); }; var script = document.createElement("script"); var query = []; for (var key in setting.data) { query.push(key + "=" + encodeURIComponent(setting.data[key])); } script.src = setting.url + "?" + query.join("&"); document.head.appendChild(script); document.head.removeChild(script); }; //使用方法 initScript({ url: 'https://xxxxxx', key: 'callback', callback: function (res) { console.log(res) } });
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· Vue3状态管理终极指南:Pinia保姆级教程