位置: IT常识 - 正文

解决has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’报错跨域问题(解决口苦最快的方法)

编辑:rootadmin
解决has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’报错跨域问题 关于前后端分离踩过的坑

推荐整理分享解决has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’报错跨域问题(解决口苦最快的方法),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:解决脱发的8个方法,解决口苦最快的方法,解决中暑最有效方法,解决中暑最有效方法,解决烧心最快方法,解决中暑最有效方法,解决中暑最有效方法,解决烧心最快方法,内容如对您有帮助,希望把文章链接给更多的朋友!

故事起因:前天晚上,在计划中学完了一个前端获取后端请求的框架叫axios。然后准备用axios、vue、以及fastapi(一个Python的web框架)写一个前后端分离的小demo。结果变成了事故,竟然报错了。

主要错误是:has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’。大概的意思是,已被CORS策略阻止:无“访问控制允许来源”。当时我也百度了一下CORS后来因为自己懒了,所以就去问一个朋友,然后他就让我去搜索如果解决跨域问题。(这个朋友还说了一下一般如何百度,技术栈+问题),所以明确一下解决跨域问题,技术栈在后端。接下来就是处理该问题的过程!!!

一、什么是源和跨域?

源(origin)就是协议、域名和端口号。 URL由协议、域名、端口和路径组成,如果两个URL的协议、域名和端口全部相同,则表示他们同源。否则,只要协议、域名、端口有任何一个不同,就是跨域。

举个例子:http://127.0.0.1:5500/VueStudy/test.html是一个前端的URL

后端接口是否跨域原因http://127.0.0.1:8081/test是端口号不一样http://127.0.0.1:5500/test (如果前端端口和后端端口在同一台机器上,会有端口占用的问题)否https://127.0.0.1:8081/test是协议不一样二、什么是同源策略?(参考百度百科)解决has been blocked by CORS policy: No ‘Access-Control-Allow-Origin’报错跨域问题(解决口苦最快的方法)

当一个浏览器的两个tab页中分别打开来 百度和谷歌的页面

当浏览器的百度tab页执行一个脚本的时候会检查这个脚本是属于哪个页面的,

即检查是否同源,只有和百度同源的脚本才会被执行。

如果非同源,那么在请求数据时,浏览器会在控制台中报一个异常,提示拒绝访问。

所以刚刚前端的请求不满足同源策略,所以被浏览器检测出来了,然后报了一个异常。

三、fastapi 跨域解决方案

解决思路就是在后台把前端的”源“加进去即可,其他技术的思路也都差不多。

前端代码(test.html)

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <script src="https://unpkg.com/axios/dist/axios.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/vue@2.5.16/dist/vue.js"></script> <title>Document</title></head><body> <div id="app"> <input type="button" value="获取后端数据" @click="login"> <h5>{{message}}</h5> </div> <script> var app = new Vue({ el: "#app", data: { message: "你好前后端分离" }, methods: { login: function() { var that = this axios.get("http://127.0.0.1:8081/test") .then(function(response) { console.log(response) that.message = response.data }) } } }) </script></body></html>

后端代码(没有解决跨域app.py)

import uvicornfrom fastapi import FastAPI, Bodyapp = FastAPI()# 模拟服务端test接口@app.get("/test")def get_login(): return "this is fastapiApp"if __name__ == '__main__': # 服务端端口是 8080! uvicorn.run(app="app:app", reload=True, host="127.0.0.1", port=8081)

后端代码(解决跨域问题app.py)

import uvicornfrom fastapi import FastAPI, Body# 1、导入对应的包from fastapi.middleware.cors import CORSMiddlewareapp = FastAPI()# 2、
本文链接地址:https://www.jiuchutong.com/zhishi/287132.html 转载请保留说明!

上一篇:F12-开发者工具常用操作与使用说明之网络network(f12开发者工具调试打不开)

下一篇:关于 Vue “__ob__:Observer“ 属性的解决方案(关于减肥的好方法)

  • 苹果手机闹钟怎么设置隔几分钟(苹果手机闹钟怎么换铃声)

    苹果手机闹钟怎么设置隔几分钟(苹果手机闹钟怎么换铃声)

  • 哈啰单车怎么预约(哈啰单车怎么预约不了只能响铃寻车)

    哈啰单车怎么预约(哈啰单车怎么预约不了只能响铃寻车)

  • 行程码带星在哪里看(行程码带星在哪个位置)

    行程码带星在哪里看(行程码带星在哪个位置)

  • 小米手机微信红包提醒怎么设置(小米手机微信红包自动领取设置)

    小米手机微信红包提醒怎么设置(小米手机微信红包自动领取设置)

  • 电脑文件隐藏了怎么找出来(电脑文件隐藏了怎么显示出来win7)

    电脑文件隐藏了怎么找出来(电脑文件隐藏了怎么显示出来win7)

  • 华硕主板怎么样(华硕主板怎么样好不好)

    华硕主板怎么样(华硕主板怎么样好不好)

  • 红米note8指纹解锁在哪里(红米note8指纹解锁怎么不见了)

    红米note8指纹解锁在哪里(红米note8指纹解锁怎么不见了)

  • 抖音怎么设置不在线(抖音怎么设置不在线状态)

    抖音怎么设置不在线(抖音怎么设置不在线状态)

  • 微信收款为什么有时不积分(微信收款为什么要上传身份证)

    微信收款为什么有时不积分(微信收款为什么要上传身份证)

  • 文档怎么把字体放大(文档怎么把字体拉长)

    文档怎么把字体放大(文档怎么把字体拉长)

  • kindle无背光晚上能看吗(没有背光的kindle可以调节亮度吗)

    kindle无背光晚上能看吗(没有背光的kindle可以调节亮度吗)

  • qq天气怎么设置城市(qq天气怎么设置在桌面)

    qq天气怎么设置城市(qq天气怎么设置在桌面)

  • 为什么抖音更新了看不到在线状态(为什么抖音更新不了最新版本)

    为什么抖音更新了看不到在线状态(为什么抖音更新不了最新版本)

  • 手机号注销了微信怎么登录(手机号注销了微信怎么办)

    手机号注销了微信怎么登录(手机号注销了微信怎么办)

  • 手机mac地址干嘛用(手机mac地址有什么作用)

    手机mac地址干嘛用(手机mac地址有什么作用)

  • 淘宝撤销退款后可以再申请再撤销吗(淘宝撤销退款后物流会继续吗?)

    淘宝撤销退款后可以再申请再撤销吗(淘宝撤销退款后物流会继续吗?)

  • qq好友标识在哪里开(qq好友标识在哪里设置基友)

    qq好友标识在哪里开(qq好友标识在哪里设置基友)

  • jovi是干嘛用的(jovi是吗?)

    jovi是干嘛用的(jovi是吗?)

  • 苹果设置隐私相机选项空白(苹果设置隐私相机)

    苹果设置隐私相机选项空白(苹果设置隐私相机)

  • plc的输出接口类型有三种(plc的输出接口类型)

    plc的输出接口类型有三种(plc的输出接口类型)

  • 京东如何更改实名认证(怎么修改京东实名)

    京东如何更改实名认证(怎么修改京东实名)

  • 网站ip地址的作用(网站的ip地址是固定的吗)

    网站ip地址的作用(网站的ip地址是固定的吗)

  • vivo相机怎么调正方形(vivo相机怎么调像素)

    vivo相机怎么调正方形(vivo相机怎么调像素)

  • 苹果11支持无线充电吗(苹果11支持无线反向充电吗)

    苹果11支持无线充电吗(苹果11支持无线反向充电吗)

  • hashtable 原理(hashtable rehash)

    hashtable 原理(hashtable rehash)

  • 抖音怎么做38张照片卡节拍(抖音怎么做38张图片)

    抖音怎么做38张照片卡节拍(抖音怎么做38张图片)

  • 华为p30pro尺寸长宽高(华为p30 pro长宽)

    华为p30pro尺寸长宽高(华为p30 pro长宽)

  • 删除文件操作异常如何解决(删除文件时错误是怎么回事)

    删除文件操作异常如何解决(删除文件时错误是怎么回事)

  • 减少实收资本需要缴纳什么税
  • 会计科目累计摊销是什么意思
  • 外出经营涉税事项报告
  • 上个月没有清卡,这个月可以抄税吗
  • 资产负债表中应付职工薪酬是负数
  • 电子承兑到期怎么操作流程
  • 企业所得税税率
  • 往来票据怎么填写
  • 股权转让需要缴纳企业所得税吗
  • 股权变更怎么缴税
  • 事业单位支付方式
  • 未开票收入如何申报增值税,下个月怎么操作
  • 服务费公司的账务处理
  • 企业在筹办期间发生的开办费计入管理费用账户
  • 营改增阶段
  • 个人年终奖如何交税
  • 交叉持股的合并财务报表
  • 进口增值税内销可以抵扣吗
  • 话费打印发票怎么缩小
  • 应收账款形成的内部原因和外部原因
  • 生物资产全套账务处理
  • 贸易公司成本怎么计算
  • 栀子花的养殖方法和注意事项茉莉花
  • redis网络模型 框架图
  • mysql实现事务
  • 控制器code是什么意思
  • 小规模纳税人交增值税吗
  • unix时间戳长度
  • react 路由参数
  • 充话费如何开公司发票
  • 计提工资薪金
  • 其他综合收益在利润表的哪个位置哪里
  • 出让土地的土地出让金与抵押权
  • python PyQt如何使用资源
  • 附有销售退回条件的商品销售,如果不能对退货
  • 房地产企业土地使用税纳税义务终止
  • 普通发票被作废了还能报销吗
  • 办理税务登记变更委托书怎么写
  • sql server自动生成行号
  • 销售增长率计算公式财务管理
  • 金融资产是分为哪三分类?
  • 分期购车会计分录小规模
  • 防伪税控技术维护费普通发票怎么申报
  • 电子银行承兑汇票最长期限
  • 自产产品对外捐赠确认收入吗
  • 销售租赁服务税率
  • 转让无形资产的收入应计入什么科目
  • 纳税人在工作
  • 小规模个人所得税税率表2023年
  • 地方水利建设基金减免政策2023
  • 没有收到款项签认债有用吗
  • 出口退税转免税怎么写个说明
  • 发票遗失重开需要收费吗?
  • 票据利率定价调整方案
  • 选择简易计税方法
  • 速动比率多少合适 视频
  • 获取sql
  • win7安装mysql5.5
  • win10硬盘安装器安装教程
  • 电脑自建热点
  • win8命令提示符管理员怎么打开
  • win10系统怎么回滚
  • linux tar -zxf
  • 磁盘修复完成以后怎么办
  • win7远程桌面连接怎么设置
  • win7到欢迎界面卡半天
  • javascript的区别
  • 人工智能最受欢迎的一门编程语言
  • Python工程师面试题 与Python基础语法相关
  • python上传本地文件的方法
  • dom的操作
  • Android IntentService解析
  • 死循环代码
  • js模拟点击alert()确定
  • jQuery ajax全局函数处理session过期后的ajax跳转问题
  • 深圳发票真伪查询入口
  • 纳税申报期过了怎么处理
  • 员工持股计划与股权激励哪个好
  • 税务工作的前景怎么样
  • 泉港国税电子税务局官网
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设