最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

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

来源:动视网 责编:小采 时间:2020-11-27 22:33:34
文档

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

详解Vuejs2.0 如何利用proxyTable实现跨域请求:前言: 本地项目在请求远端服务器接口时,不可避免的会遇到跨域问题,即便是设置了Access-Control-Allow-Origin:* ,在遇到登录这些需要本地存入cookie的也会很头痛,这里笔者介绍一个在vue-cli中配置代理来解决的办法。 在~/config/dev-ser
推荐度:
导读详解Vuejs2.0 如何利用proxyTable实现跨域请求:前言: 本地项目在请求远端服务器接口时,不可避免的会遇到跨域问题,即便是设置了Access-Control-Allow-Origin:* ,在遇到登录这些需要本地存入cookie的也会很头痛,这里笔者介绍一个在vue-cli中配置代理来解决的办法。 在~/config/dev-ser


前言:

本地项目在请求远端服务器接口时,不可避免的会遇到跨域问题,即便是设置了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;
    **/
    
    

    文档

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

    详解Vuejs2.0 如何利用proxyTable实现跨域请求:前言: 本地项目在请求远端服务器接口时,不可避免的会遇到跨域问题,即便是设置了Access-Control-Allow-Origin:* ,在遇到登录这些需要本地存入cookie的也会很头痛,这里笔者介绍一个在vue-cli中配置代理来解决的办法。 在~/config/dev-ser
    推荐度:
    标签: VUE js 跨域
    • 热门焦点

    最新推荐

    猜你喜欢

    热门推荐

    专题
    Top