详解Vuejs2.0 如何利用proxyTable实现跨域请求

 更新时间:2017年08月03日 10:50:10   作者:Yunfly  
本篇文章主要介绍了Vuejs2.0 如何利用proxyTable实现跨域请求,具有一定的参考价值,有兴趣的可以了解一下

前言:

本地项目在请求远端服务器接口时,不可避免的会遇到跨域问题,即便是设置了Access-Control-Allow-Origin:* ,在遇到登录这些需要本地存入cookie的也会很头痛,这里笔者介绍一个在vue-cli中配置代理来解决的办法。

在~/config/dev-server.js中 使用了非常强大的http-proxy-middleware 包。更多高级用法,请查阅其文档

用法:

比如我们要请求的远端服务器为:http://192.168.400:3000

proxyTable: {
   '/api/': {
    target: 'http://192.168.400:3000',
    changeOrigin:true,  //set the option changeOrigin to true for name-based virtual hosted sites
    pathRewrite: {
     '^/api': '/api'
    }
   },
  },
  • 通过设置changeOrigin:true 开启代理
  • pathRewrite 意为重写路径

示例:

比如要请求的接口为http://192.168.400:3000/api/main/getUserInfo.action

this.$http.post('/api/main/getUserInfo.action')
 .then(res=>{
  console.log(res)
 })

后续:

在实际工作中,我们还需要做些其他的,比如在axios中配置baseUrl:

/**
 * Created by Administrator on 2017/4/11.
 */
import axios from 'axios';

// 添加响应拦截器
axios.interceptors.request.use(function (config) {
 // 配置发送请求的信息

 return config;
}, function (error) {
 return Promise.reject(error);
});

axios.interceptors.response.use(function (response) {
 // 配置请求回来的信息

 return response;
}, function (error) {
 return Promise.reject(error);
});

var http = axios.create({
 timeout: 8000, /*设置请求超时时间*/
 baseURL:'http://192.168.400:3000', 

});

// Alter defaults after instance has been created
http.defaults.headers.common['Authorization'] = '';

export default http; 

/**导出http,在mainjs中引用
import http from './config/axiosConfig';
Vue.prototype.$http = http;
**/

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Vue实现递归组件的思路与示例代码

    Vue实现递归组件的思路与示例代码

    以简单的树形组件为案例,实现在组件中递归组件,下面这篇文章主要给大家介绍了关于Vue实现递归组件的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-09-09
  • Vue提示框组件vue-notification使用详解

    Vue提示框组件vue-notification使用详解

    这篇文章主要介绍了Vue提示框组件vue-notification使用详解,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-03-03
  • vue页面监听是否置为后台或可见状态问题

    vue页面监听是否置为后台或可见状态问题

    这篇文章主要介绍了vue页面监听是否置为后台或可见状态问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-10-10
  • Vue集成lodop插件实现打印功能

    Vue集成lodop插件实现打印功能

    lodop 取意自“load or print”,是一款优秀的 Web 打印控件。本文将在Vue中集成lodop插件实现打印功能,感兴趣的小伙伴可以了解一下
    2023-01-01
  • vuex 的简单使用

    vuex 的简单使用

    vuex是一个专门为vue.js设计的集中式状态管理架构。这篇文章主要介绍了vuex 的简单使用,需要的朋友可以参考下
    2018-03-03
  • 如何在Vue.js中实现标签页组件详解

    如何在Vue.js中实现标签页组件详解

    这篇文章主要给大家介绍了关于如何在Vue.js中实现标签页组件的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-01-01
  • vuex实现数据状态持久化

    vuex实现数据状态持久化

    今天小编就为大家分享一篇vuex实现数据状态持久化,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-11-11
  • Vue使用el-tree 懒加载进行增删改查功能的实现

    Vue使用el-tree 懒加载进行增删改查功能的实现

    这篇文章主要介绍了Vue使用el-tree 懒加载进行增删改查,以懒加载的形式展示,目录根据需求需要有新增 编辑 删除 操作以及操作后的刷新树结构,具体实现代码跟随小编一起看看吧
    2021-08-08
  • 前端架构vue动态组件使用基础教程

    前端架构vue动态组件使用基础教程

    这篇文章主要为大家介绍了前端架构vue动态组件使用的基础教程,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步早日升职加薪
    2022-02-02
  • Vue项目判断开发、测试、正式环境过程

    Vue项目判断开发、测试、正式环境过程

    这篇文章主要介绍了Vue项目判断开发、测试、正式环境过程,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-04-04

最新评论