欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Gateway如何實現(xiàn)全局跨域

 更新時間:2024年04月22日 10:00:18   作者:穿城大餅  
這篇文章主要介紹了Gateway如何實現(xiàn)全局跨域問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教

解決方案:Gateway實現(xiàn)全局跨域

關(guān)鍵詞

  • spring:cloud:gateway:globalcors
  • gateway 使用 WebFlux 作為服務(wù)器,項目依賴 starter-webflux,不要依賴 starter-web

一、網(wǎng)關(guān)介紹

網(wǎng)關(guān)是介于客戶端和服務(wù)器端之間的中間層,所有的外部請求都會先經(jīng)過網(wǎng)關(guān)這一層。

也就是說,API 的實現(xiàn)方面更多的考慮業(yè)務(wù)邏輯,而安全、性能、監(jiān)控可以交由 網(wǎng)關(guān)來做,這樣既提高業(yè)務(wù)靈活性又不缺安全性,典型的架構(gòu)圖如圖所示:

優(yōu)點:

  • 安全 ,只有網(wǎng)關(guān)系統(tǒng)對外進(jìn)行暴露,微服務(wù)可以隱藏在內(nèi)網(wǎng),通過防火墻保護(hù)。
  • 易于監(jiān)控??梢栽诰W(wǎng)關(guān)收集監(jiān)控數(shù)據(jù)并將其推送到外部系統(tǒng)進(jìn)行分析。
  • 易于認(rèn)證。可以在網(wǎng)關(guān)上進(jìn)行認(rèn)證,然后再將請求轉(zhuǎn)發(fā)到后端的微服務(wù),而無須在每個微服務(wù)中進(jìn)行認(rèn)證。
  • 減少了客戶端與各個微服務(wù)之間的交互次數(shù)
  • 易于統(tǒng)一授權(quán)

微服務(wù)網(wǎng)關(guān)就是一個系統(tǒng),通過暴露該微服務(wù)網(wǎng)關(guān)系統(tǒng),方便我們進(jìn)行相關(guān)的鑒權(quán),安全控制,日志統(tǒng)一處理,易于監(jiān)控的相關(guān)功能。

二、實現(xiàn)微服務(wù)網(wǎng)關(guān)的技術(shù)

  • Nginx系列,Nginx (engine x) 是一個高性能的HTTP和反向代理web服務(wù)器,同時也提供了IMAP/POP3/SMTP服務(wù)
  • zuul ,Zuul 是 Netflix 出品的一個基于 JVM 路由和服務(wù)端的負(fù)載均衡器。
  • spring-cloud-gateway,是spring 出品的 基于spring 的網(wǎng)關(guān)項目,集成斷路器,路徑重寫,性能比Zuul好。

我們使用gateway這個網(wǎng)關(guān)技術(shù),無縫銜接到基于spring cloud的微服務(wù)開發(fā)中來。

三、微服務(wù)網(wǎng)關(guān)跨域配置

1. 配置文件:application.yml(在網(wǎng)關(guān)中開啟跨域訪問功能)

修改application.yml ,在spring.cloud.gateway節(jié)點添加配置

      # 網(wǎng)關(guān)跨域配置start---------------------------------
      # 開啟網(wǎng)關(guān)的跨域功能,具體微服務(wù)上的跨域需要進(jìn)行關(guān)閉,否則無效
      globalcors:
        cors-configurations:
          '[/**]': # 匹配所有請求
            allowedOrigins: "*" # 跨域處理 允許所有的域
            allowedMethods: # 支持的方法
              - GET
              - POST
              - PUT
              - DELETE
      # 網(wǎng)關(guān)跨域配置end---------------------------------

2. 配置案例

spring:
  application:
    name: dabing-gateway
  cloud:
    gateway:
    	
      # 網(wǎng)關(guān)跨域配置start---------------------------------
      # 開啟網(wǎng)關(guān)的跨域功能,具體微服務(wù)上的跨域需要進(jìn)行關(guān)閉,否則無效
      globalcors:
        cors-configurations:
          '[/**]': # 匹配所有請求
            allowedOrigins: "*" # 跨域處理 允許所有的域
            allowedMethods: # 支持的方法
              - GET
              - POST
              - PUT
              - DELETE
      # 網(wǎng)關(guān)跨域配置end---------------------------------
		
      routes:
        - id: xxx
          uri: lb://xxx
          predicates:
            - Path=/xxx/**
          filters:
            - StripPrefix= 1
         
server:
  port: 9090
eureka:
  client:
    service-url:
      defaultZone: http://DabingCloudEurekaServerA:8761/eureka
  instance:
    prefer-ip-address: true

總結(jié)

以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • Spring Boot 中使用 Mybatis Plus的操作方法

    Spring Boot 中使用 Mybatis Plus的操作方法

    本文介紹了如何在 Spring Boot 項目中集成 Mybatis Plus,Spring Boot 與 MyBatis Plus 的集成非常簡單,通過自動配置和簡潔的 API,可以大大減少開發(fā)中常見的數(shù)據(jù)庫操作代碼,需要的朋友參考下吧
    2024-12-12
  • 詳解SpringBoot結(jié)合swagger2快速生成簡單的接口文檔

    詳解SpringBoot結(jié)合swagger2快速生成簡單的接口文檔

    這篇文章主要介紹了詳解SpringBoot結(jié)合swagger2快速生成簡單的接口文檔,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2019-05-05
  • JAVA 繼承基本類、抽象類、接口介紹

    JAVA 繼承基本類、抽象類、接口介紹

    Java是一個面向?qū)ο蟮恼Z言,java面向?qū)ο笠话阌腥筇卣鳎悍庋b、繼承、多態(tài)
    2013-01-01
  • SpringMVC中MultipartFile上傳獲取圖片的寬度和高度詳解

    SpringMVC中MultipartFile上傳獲取圖片的寬度和高度詳解

    本篇文章主要介紹了SpringMVC中MultipartFile上傳獲取圖片的寬度和高度,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-05-05
  • android顯示意圖激活另一個Activity的方法

    android顯示意圖激活另一個Activity的方法

    下面小編就為大家?guī)硪黄猘ndroid顯示意圖激活另一個Activity的方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • Spring boot 數(shù)據(jù)庫連接斷線重連問題

    Spring boot 數(shù)據(jù)庫連接斷線重連問題

    這篇文章主要介紹了Spring boot 數(shù)據(jù)庫連接斷線重連問題,需要的朋友可以參考下
    2017-06-06
  • 詳解SpringBean基于XML的裝配

    詳解SpringBean基于XML的裝配

    Bean的裝配可以理解為依賴關(guān)系注入,Bean的裝配方式也就是Bean 的依賴注入方式.Spring容器支持多種形式的Bean的裝配方式,如基于XML的Bean裝配,基于Annotation的Bean裝配和自動裝配等.本文就帶大家了解SpringBean基于XML的裝配,需要的朋友可以參考下
    2021-05-05
  • Java注解(annotation)簡述

    Java注解(annotation)簡述

    這篇文章主要介紹了使用java的注解(用在java類的方法上的注解)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-08-08
  • JavaSE的邏輯控制你了解嗎

    JavaSE的邏輯控制你了解嗎

    這篇文章主要為大家詳細(xì)介紹了JavaSE的邏輯控制,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下,希望能夠給你帶來幫助
    2022-03-03
  • Java中數(shù)組的創(chuàng)建與傳參方法(學(xué)習(xí)小結(jié))

    Java中數(shù)組的創(chuàng)建與傳參方法(學(xué)習(xí)小結(jié))

    這篇文章主要介紹了Java中數(shù)組的創(chuàng)建與傳參方法,非常不錯,具有參考借鑒價值,需要的朋友可以參考下
    2016-09-09

最新評論