vue3中结合egg实现jsonp跨域请求

简介: vue3中结合egg实现jsonp跨域请求

jsonp(egg内置的中间件)


中间件配置


// config/config.default.js
exports.jsonp = {
  callback: 'callback', // 识别 query 中的 `callback` 参数
  limit: 100, // 函数名最长为 100 个字符
};


egg中自动拼接执行传递过来的回调函数。所以不需要拼接callback函数,传递参数。直接传递即可。


// 其他框架中
async index() {
    const { ctx } = this
    const callback = ctx.query.callback
    const data = {
      username: 'zh',
      password: '123'
    }
    ctx.body = `${callback}(${data})`;
  }


// egg中
async index() {
    const { ctx } = this
    const data = {
      username: 'zh',
      password: '123'
    }
    ctx.body = data;
  }


设置访问白名单


// config.default.js
  config.jsonp = {
    callback: 'callback',
    csrf: true,
    // 设置白名单.不加端口号
    whiteList: /http:// localhost//
  }


vue3中使用jsonp


setup() {
    // jsonp解决跨域
    //动态创建script,加载数据
    const oScript = document.createElement("script");
    oScript.src = `http://localhost:7001/testjsonp?callback=getResultList`;
    document.body.appendChild(oScript);
    //动态创建script,执行回调脚本
    const oScript1 = document.createElement("script");
    oScript1.innerHTML = `
      function getResultList(res) {
        console.log("res", res)
      }
    `
    document.body.appendChild(oScript1);
  },


相关文章
|
9天前
vue3+Ts 二次封装ElementUI form表单
【10月更文挑战第8天】
157 59
|
3天前
|
JavaScript 容器
乾坤qiankun框架搭建 主应用为vue3的项目。
乾坤qiankun框架搭建 主应用为vue3的项目。
19 2
|
6天前
|
JavaScript API
Vue3实现面板分割
Vue3实现面板分割
20 1
|
5天前
|
移动开发 JavaScript 前端开发
💻揭秘!如何用 Vue 3 实现酷炫的色彩魔方游戏✨
本文分享了开发基于Canvas技术的小游戏"色彩魔方挑战"的完整过程。游戏旨在考验玩家的观察力和耐心,通过随机生成的颜色矩阵和一个变化点,玩家需在两幅画布中找出不同的颜色点。文章详细讲解了游戏的核心功能,包括随机颜色矩阵生成、点的闪烁提示、自定义配色方案等。此外,作者展示了使用Vue 3和TypeScript开发的代码实现,带领读者一步步深入了解游戏的逻辑与细节。
119 69
|
3天前
|
JavaScript
vue3 生命周期
【10月更文挑战第14天】vue3 生命周期
|
4天前
|
JavaScript 前端开发
Vue 2 和 Vue 3 之间响应式区别
10月更文挑战第7天
17 2
|
5天前
|
存储 前端开发 中间件
vue3之vite配置vite-plugin-mock使用mock轻松创建模拟数据提高开发效率
vue3之vite配置vite-plugin-mock使用mock轻松创建模拟数据提高开发效率
27 0
|
5天前
|
JavaScript 前端开发 API
vue3中常用插件的使用方法:按需引入自定义组件,自动导入依赖包,自动生成路由,自动生成模拟数据
vue3中常用插件的使用方法:按需引入自定义组件,自动导入依赖包,自动生成路由,自动生成模拟数据
91 0
|
10天前
|
Web App开发 JavaScript 数据可视化
vue3扩展echart封装为组件库-快速复用
vue3扩展echart封装为组件库-快速复用
41 7
|
5天前
|
JavaScript 前端开发 算法
对比一下Vue2 和 Vue3?—— 8个方面给你答案
本文介绍了 Vue 和 React 的起源、核心思想、表现形式、API 差异、社区差异、升级方向、响应式原理、Diff 算法、事件机制,并进行了总结。Vue 以其渐进式框架设计和简洁性著称,而 React 则强调单向数据流和灵活性。两者均支持组件化开发和虚拟 DOM,适用于不同的开发场景。
14 0
对比一下Vue2 和 Vue3?—— 8个方面给你答案