当前位置: 首页 > 编程笔记 >

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

秦昊穹
2023-03-14
本文向大家介绍详解Vuejs2.0 如何利用proxyTable实现跨域请求,包括了详解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;
**/

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

 类似资料:
  • 本文向大家介绍详解Vuejs2.0之异步跨域请求,包括了详解Vuejs2.0之异步跨域请求的使用技巧和注意事项,需要的朋友参考一下 Vuejs由1.0更新到了2.0版本。HTTP请求官方也从推荐使用Vue-Resoure变为了axios。接下来我们来简单地用axios进行一下异步请求。(阅读本文作者默认读者具有使用npm命令的能力,以及具备ES6的能力,以及等等。。。) 首先我们来安装Vue-Cl

  • 本文向大家介绍详解AngularJS如何实现跨域请求,包括了详解AngularJS如何实现跨域请求的使用技巧和注意事项,需要的朋友参考一下 跨域,前端开发中经常遇到的问题,AngularJS实现跨域方式类似于Ajax,使用CORS机制。 下面阐述一下AngularJS中使用$http实现跨域请求数据。 AngularJS XMLHttpRequest:$http用于读取远程服务器的数据 一、$ht

  • 本文向大家介绍Vue-cli proxyTable 解决开发环境的跨域问题详解,包括了Vue-cli proxyTable 解决开发环境的跨域问题详解的使用技巧和注意事项,需要的朋友参考一下 和后端联调时总是会面对恼人的跨域问题,最近基于Vue开发项目时也遇到了这个问题,两边各自想了一堆办法,查了一堆资料,加了一堆参数,最后还得我把自己的localhost映射成上线时将要使用的域名。 今天翻看代码

  • 本文向大家介绍详细解密jsonp跨域请求,包括了详细解密jsonp跨域请求的使用技巧和注意事项,需要的朋友参考一下 1.什么是跨域请求: 服务器A上的一个页面,要请求服务器B上的一个处理程序,这就叫做跨域请求 本次的测试页面为: 处理程序kimhandler.ashx,如下: 另一张处理程序handler.ashx如下: 2.Ajax无法实现跨域请求 查看监视器,发现没有返回任何请求报文体 3.使

  • 本文向大家介绍js如何实现跨域?相关面试题,主要包含被问及js如何实现跨域?时的应答技巧和注意事项,需要的朋友参考一下 参考回答: JSONP:通过动态创建script,再请求一个带参网址实现跨域通信。document.domain + iframe跨域:两个页面都通过js强制设置document.domain为基础主域,就实现了同域。 location.hash + iframe跨域:a欲与b跨

  • 本文向大家介绍jQuery Ajax实现跨域请求,包括了jQuery Ajax实现跨域请求的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了jQuery Ajax跨域请求的具体代码,供大家参考,具体内容如下 html 代码清单: 服务端 validate.php 代码清单: 效果图: 以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持呐喊教程。