Vue/Vue2 跨域

发布于 2024-12-06 08:43:52 字数 1110 浏览 4 评论 0

1. jsonp

  1. npm install vue-resource -save
  2. routes\index.js 中引入并注册该组件
    import VueResource from 'vue-resource'
    Vue.use(VueResource);
    
  1. 使用 vue-resource 的 jsonp() 方法

    jsonp() 不能发送 post 请求,不管是否跨域,只要用 jsonp() 方式则该请求一定是 get 方式,因为本质是 script 方式加载的

    this.$http.jsonp('/someUrl', [data], [options]).then(successCallback, errorCallback);
    

2. 更改服务器代码

//跨域设置,此代码要在所有的路由路径配置之前执行,否则代码之前定义的路由不接受此跨域的头部配置
app.all('*', function (req, res, next) {
    res.header('Access-Control-Allow-Origin', '*');
    res.header('Access-Control-Allow-Headers', 'Content-Type, Content-Length, Authorization ,Accept ,X-Requested-With, yourHeaderFeild');
    res.header('Access-Control-Allow-Methods', 'PUT, POST, GET, DELETE, OPTIONS');
    if (req.method == 'OPTIONS') {
        res.send(200); //让 OPTIONS 请求快速返回
    } else {
        next();
    }
});
app.use('/', indexRouter);

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

自由如风

暂无简介

0 文章
0 评论
22 人气
更多

推荐作者

爱人如己

文章 0 评论 0

萧瑟寒风

文章 0 评论 0

云雾

文章 0 评论 0

倒带

文章 0 评论 0

浮世清欢

文章 0 评论 0

撩起发的微风

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文