跨域和网关通俗小白理解

news2024/10/6 14:27:44

跨域

跨域就是协议+域名+端口不同的服务器不能互相请求,企业级解决办法一般是通过Nginx反向代理实现

我们服务,线上都是通过S3服务器的Nginx反向代理解决跨域问题,因为Nginx和服务端沟通属于服务器之间的问题,不像浏览器有同源策略限制

提问:nginx也是一个服务器,为什么客户端跟nginx发请求时 不会出现跨域?

方案一(笔者认为不现实,同源意味着部署了同一域名端口,限制太大):浏览器应该是访问同源的nginx,然后ngnix去请求真正的后端(这里跨域了,但是不是浏览器在请求,所以没问题),nginx请求成功后把请求的结果返回浏览器

慕课老师的答案:前端到nginx的跨域问题nginx底层已经处理好了

前端的本地调用比较特殊,通过修改config/host和config/index就可以实现本地访问,这是通过node实现的。node也是一个服务器,可以搜npm底层去了解,首先在调用api中指定了hostype

 根据hostype中指定的参数到config/index中去找到对应转发规则,这个规则可以理解为Nginx中的转发,这里底层就是通过node代理实现

然后回到Target中找到config/index中对应的转发目的地,这里指定了我们本机服务及端口

 

网关

考虑一个问题,我们分布式系统中有N+个服务,每个服务部署在不同的机器+端口,我们有一个统一的前端页面,要访问十个不同服务的接口,那么每个接口都要配置对应服务的ip+端口,这显然不合理,所以这里前段访问的是统一的域名htttp://域名/gateway/context-path,服务监测到/gateway,请求统一先转发到网关服务,网关根据context-path,转发到服务所在ip+端口

下面是网关转发的一个配置

 

可能有疑惑,这里并没有配置具体ip+端口,只是配置了个域名

这就到了第二步,根据配置的转发内容http://xxx.api/funds-fx-omc/运维会在根据域名和context-path unds-fx-omc再设置一层转发,最终就转发到了目标服务所在ip+端口,这里的转发规则一般是写死的脚本

再来看个不一样的,如果微服务都接入了nacos,可以直接通过制定服务名来转发

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/445176.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

哇塞,炫云的智能优化太厉害啦!渲染费用竟然大幅降低了!

你有没有遇到过因为设置参数错误而导致云渲染费用突然飙升的情况呢?或者不知道自己设置的参数是否过高?现在,这些问题都可以轻松解决了,因为炫云的渲染质量功能非常智能和人性化。根据不同用户需求,它将参数优化分为五…

二进制部署nacos、docker部署nacos、k8s部署nacos、helm部署nacos

目录 前言Nacos支持三种部署模式官方文档二进制部署nacos(单机模式)安装jdk创建数据库及用户名下载安装包并解压导入nacos的表结构修改配置文件,启动nacos,登录nacos 二进制部署nacos(cluster模式)安装jdk&…

干货 | 什么是高频电解电容,它有普通电解电容有什么区别?

高频电解电容是一种常见的电容器,它在高频电路中发挥着重要的作用。与普通电解电容不同,高频电解电容能够更好地适应高频电路的需求,具有更高的频率响应和更低的ESR(等效串联电阻)。 电解电容重要性:电解电…

射频功率放大器在超声换能器声场特性校准中的应用

实验名称:基于水听器法的超声换能器声场特性校准技术的研究 研究方向:超声换能器 测试目的: 超声无损检测是无损检测领域重要的技术之一,而换能器作为超声检测中的关键部件,广泛应用于工业检测和医用超声成像领域。其性…

opencv配置安装

opencv配置安装 1、安装方式 https://blog.csdn.net/qq_45022687/article/details/120241068 根据这个网址的配置进行安装 2、解编译 mutex/thread等 似乎因为mingw的问题,#include 等直接引入线程无法直接引用,这导致了原有代码中直接使用mutex/thread的部分需要…

关于ARM核心板、一体板、底板的知识分享

嵌入式处理器模组,又称嵌入式核心板,或为CPU模组/核心板/SOM(System on Module),它是包含处理系统的核心电子部件的子电路板,集成了主芯片、存储器(eMMC/Nand Flash)、运行内存(DDR)…

太神奇了,1984 年的电脑也能跑 Chat-GPT

新加坡的逆向计算爱好者 Yeo Kheng Meng 发布了一个 “doschgpt” ChatGPT 客户端,这个客户端适用于上世纪八十年代的 MS-DOS 系统。 目前这个 DOS 系统的 ChatGPT 客户端已成功在 1984 年的 IBM 5155 便携式 PC 上运行,这台机子配备 4.77Mhz 主频的 In…

孤儿僵尸守护进程基本概念与使用

文章目录 前言孤儿进程僵尸进程守护进程总结 前言 孤儿进程、僵尸进程和守护进程是操作系统中的概念,它们分别表示不同的进程状态和特性。孤儿进程和僵尸进程了解了解(都是为守护进程做铺垫),但是对于守护进程大家还是可以好好学习学习,相信…

人民满意手机银行服务白皮书——服务分析篇

易观:商业银行积极践行“金融为民”,坚持“以用户为中心”的发展理念,从全客群、全服务、全渠道推动金融服务触达广大人民群众。其中,手机银行作为服务及经营主阵地,是人民群众获取金融服务的超级入口及服务平台。 “以…

【超算/先进计算学习】日报2

目录 今日已完成任务列表遇到的问题及解决方案任务完成详细笔记编辑器Vim程序开发步骤文件编辑器 Vim 快速入门任务练习 编译器 GCC程序编译流程编译器 gcc 的简易使用gcc 编译链接命令规则及常用编译选项 工程构建工具 Makemake 命令与makefile文件的规则和逻辑makefile 文件编…

数据库ER图详解

ER图也成ERD(Entity Relationship Diagram),目前对于ER图的表示有两种方式: 一种是Chens notation,1976年Peter Chen首次提出了Entity Relationship Modeling(实体关系建模)概念。 另一种是Crow’s foot no…

【UITableViewCell的重用 Objective-C语言】

一、UITableViewCell有哪些属性,怎么看, 1.可以按住command键,点开这个UITableView,看到如下界面: 这个时候,文字比较大,你可能看起来不是很清楚,这个时候,可以点击左上角的xcode,选择Preference, 让它变小一些, 文字变小,变成12以后,这些属性,是不是对的很齐啊…

Postcat IDEA 插件,最全的使用教程

Postcat 插件不会入侵到代码内部,无需添加任何jar包依赖,这个真的很香! 下面说一说,这个插件如何使用,是时候展现真正的技术了~ 如何安装配置? IDEA 版本需大于 IntelliJ IDEA 2022.03 在 IDEA “设置-插件…

JSon使用

官方文档 JSon在线文档&#xff1a;https://www.w3school.com.cn/js/js_json_intro.asp Ajax在线文档&#xff1a;https://www.w3school.com.cn/js/js_ajax_intro.asp Json介绍 Json快速入门 <!DOCTYPE html> <html lang"en"> <head><meta c…

从编译器角度理解C++编译和连接原理

C编译链接整体介绍 链接主要工作 1 所有.o文件段的合并&#xff0c;符号表合并后&#xff0c;进行符号解析 链接时就是在符号表中找对应的符号是否只出现于.text或.data段一次&#xff0c;若一次都无&#xff0c;则符号未定义&#xff1b;若出现多次&#xff0c;符号重定义 符…

JavaSE补充 | apache-common包的使用,快速完成IO操作

目录 一&#xff1a;apache-common包的使用&#xff0c;快速完成IO操作 1. IOUtils类的使用 2. FileUtils类的使用 一&#xff1a;apache-common包的使用&#xff0c;快速完成IO操作 IO技术开发中&#xff0c;代码量很大&#xff0c;而且代码的重复率较高&#xff0c;为此Ap…

【MySQL】数据库约束和聚合函数的使用

目录 上篇在这里喔~ 1.数据库约束 1.NULL约束 2.UNIQUE唯一约束 3.DEFAULT默认值约束 4.PRIMARY KEY主键约束 5.FOREIGN KEY外键约束 2.表的设计 1.设计思路​编辑 2.固定套路​编辑 2.1一对一关系 2.2一对多关系 ​编辑 2.3多对多关系 ​编辑​编辑​编辑 3.插入…

《C++模板》(初阶)零基础讲解

本文主要介绍C的模板&#xff0c;包括函数模板和类模板 文章目录 为什么要有模板1、函数模板1.1 函数模板概念1.1 函数模板格式1.3 函数模板的原理1.4 函数模板的实例化1.5 模板参数的匹配原则 2、类模板2.1 类模板的定义格式2.2 类模板的实例化 为什么要有模板 就拿我们写的交…

从“捐赠openEuler”到“向openEuler捐赠”,openEuler生态走入高速发展期

【中国&#xff0c;上海&#xff0c;2023年4月21日】openEuler Developer Day 2023于4月20-21日在线上和线下同步举办。本次大会由开放原子开源基金会指导&#xff0c;中国软件行业协会、openEuler社区、边缘计算产业联盟共同主办&#xff0c;以“万涓汇流&#xff0c;奔涌向前…

ROS使用(10)URDF

Building a visual robot model from scratch 在本教程中&#xff0c;我们将构建一个机器人的视觉模型&#xff0c;它看起来有点像R2D2。 在后面的教程中&#xff0c;您将学习如何 清晰地表达模型&#xff0c;添加一些物理属性&#xff0c;并使用xacro生成更简洁的代码&#x…