当前位置:网站首页>cross domain solution
cross domain solution
2022-08-05 03:25:00 【shewlong】
使用proxy解决跨域问题
问题引入
If the front end does not passproxy设置代理,The request interface will report a cross-domain problem
Access to XMLHttpRequest at 'https://www.baidu.com/s?ie=utf+-+8&mod=1&isbd=1&isid=28B087E526051712&f=8&rsv_bp=1&rsv_idx=1&tn=baidu&wd=this.$axios&fenlei=256&oq=this.%2524axios&rsv_pq=af3009be00003a79&rsv_t=1c5fWtMk%2B6xwWKQqibPt6DyyGzLEaQSdASvH93Q6UDEXyZdfGTnRxojuNms&rqlang=cn&rsv_enter=0&rsv_dl=tb&rsv_btype=t&bs=this.$axios&_ss=1&clist=&hsug=&f4s=1&csor=' from origin 'http://172.16.20.231:8080' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
解决方案
1.在vue.config.ts中进行配置
//vue-cli3.0 里面的 vue.config.js做配置
devServer: {
proxy: {
'/cdn': {
target: 'https://position.csdnimg.cn', // 后台接口域名
ws: true, //如果要代理 websockets,配置这个参数
secure: false, // 如果是https接口,需要配置这个参数
changeOrigin: true, //是否跨域
pathRewrite:{
'^/cdn': '/'
}
}
}
}
2.Send a request on a specific page
Suppose the backend address to be requested is ’https://position.csdnimg.cn/oapi/get’
//使用axios进行请求,首先在main.ts中将axios挂载到vue原型中
import axios from 'axios'
Vue.prototype.$service = axios
//used in specific pagesthis.$axios进行请求,Native is not packaged
this.$axios({
method: "get",
//上面的proxy会将url地址解析为https://position.csdnimg.cn/oapi/get
url: "/cdn/oapi/get",
params: {
// Here is the data sent to the background
},
}).then((response) => {
// 这里使用了ES6的语法
console.log(response); // 请求成功返回的数据
});
3.Address substitution may be required under certain conditions
var url = "https://position.csdnimg.cn/oapi/get"
var reg = /^http(s)?:\/\/(.*?)\//
// 必须是http开头或者https开头,结尾为'/'
// 把hostreplace with the specified value
var ToReplace = 'cdn/'
url.replace(reg, ToReplace)
// Host/cench
//*******************************************
If only need to take out eg:position.csdnimg.cn,in the following way
reg.exec(url)[2]
// www.cnblogs.com
边栏推荐
- Countdown to 2 days|Cloud native Meetup Guangzhou Station, waiting for you!
- Increasing leetcode - a daily topic 1403. The order of the boy sequence (greed)
- Open Source License Description LGPL
- 905. 区间选点
- Solve the problem of port occupancy Port xxxx was already in use
- Why is the pca component not associated
- QStyle platform style
- [Qixi Festival] Romantic Tanabata, code teaser.Turn love into a gorgeous three-dimensional scene and surprise her (him)!(send code)
- 达梦8数据库导出导入
- 包拉链不可用,但是是被另一个包。
猜你喜欢
Initial solution of the structure
IJCAI2022 | DictBert: Pre-trained Language Models with Contrastive Learning for Dictionary Description Knowledge Augmentation
毕设-基于SSM房屋租赁管理系统
On governance and innovation, the 2022 OpenAtom Global Open Source Summit OpenAnolis sub-forum came to a successful conclusion
开发Hololens遇到The type or namespace name ‘HandMeshVertex‘ could not be found..
This year's Qixi Festival, "love vegetables" are more loving than gifts
通过模拟Vite一起深入其工作原理
The usage of try...catch and finally in js
QT MV\MVC structure
In 2022, you still can't "low code"?Data science can also play with Low-Code!
随机推荐
基于生长的棋盘格角点检测方法
Walter talked little knowledge | "remote passthrough" that something
今年七夕,「情蔬」比礼物更有爱
Details such as compiling pretreatment
Question about #sql shell#, how to solve it?
How to find all fields with empty data in sql
2022高处安装、维护、拆除考试题模拟考试题库及在线模拟考试
High Item 02 Information System Project Management Fundamentals
How to sort multiple fields and multiple values in sql statement
为什么pca分量没有关联
剑指Offer--找出数组中重复的数字(三种解法)
ffmpeg pixel format basics
【软件测试】自动化测试之unittest框架
用CH341A烧录外挂Flash (W25Q16JV)
调用阿里云oss和sms服务
【滤波跟踪】基于matlab无迹卡尔曼滤波惯性导航+DVL组合导航【含Matlab源码 2019期】
905. 区间选点
【已解决】Unity Coroutinue 协程未有效执行的问题
The linear table lookup
CPDA|How Operators Learn Data Analysis (SQL) from Negative Foundations