説明:私は2つの主な理由のためにこのブログの記事を書いています:まず、I、IIに簡単にアクセスし、友人の全体白ミクロ検査サービスのために勉強したいです。主に以下のゆうShengjun白を理解することができますので、私は彼のステップに基づいて洗練され、また導入ゆうShengjunリンクの時点で再生してください
1.1。 ビルド zull ゲートウェイ
1.1.1。 確立ワンショップ-基本-springcloud- zuul サービス
1.1.1。 ポンポンのファイル
<依存性> <依存> <groupIdを> org.springframework.cloud </ groupIdを> <たartifactId>ばねクラウドスタータのNetflix-zuul </たartifactId> </依存関係> <! - 威張っスプリングブート - > <依存> <groupIdを> com.spring4all </ groupIdを> <たartifactId>威張っスプリング・ブート・スターター</たartifactId> <バージョン> 1.7.0.RELEASE </バージョン> </依存関係> </依存関係>
1.1.1。 YMLのファイル
###サービスポート開始番号 サーバ: ポート:8088 ###サービス名(ユーレカに登録されたサービス名) 春: 応用: 名前:アプリ-1-zuul ユーレカに登録された###サービスアドレス ユーレカ: クライアント: サービスURL: defaultZone:http://127.0.0.1:8100/eureka ### Gatewayのリバースプロキシの設定 zuul: ルート: API-A: 会員サービスに転送###へ/ API-weixin /訪問 パス:/ API-weixin / ** サービスID:アプリ-1-weixin API-B: ###訪問に転送API-メンバー/サービスオーダー/へ パス:/ API-メンバー/ ** サービスID:アプリ-1-メンバー
1.1.1。 スタートとテストクラス
パッケージcom.one。 輸入はjava.util.ArrayList; 輸入はjava.util.List; 輸入org.springframework.boot.SpringApplication。 輸入org.springframework.boot.autoconfigure.SpringBootApplication。 輸入org.springframework.cloud.netflix.eureka.EnableEurekaClient; 輸入org.springframework.cloud.netflix.zuul.EnableZuulProxy; 輸入org.springframework.context.annotation.Primary; 輸入org.springframework.stereotype.Component; 輸入com.spring4all.swagger.EnableSwagger2Doc。 輸入springfox.documentation.swagger.web.SwaggerResource。 輸入springfox.documentation.swagger.web.SwaggerResourcesProvider。 / ** *マイクロサービスゲートウェイの入り口 * @Author Chenyuanボー * * / @SpringBootApplication @EnableEurekaClient @EnableZuulProxy @ EnableSwagger2Doc パブリック クラスAppGateWay { パブリック 静的 ボイドメイン(文字列[]引数){ SpringApplication.run(AppGateWay。クラス、引数)。 } // ドキュメント・ソースを追加 @Component @Primary クラス DocumentationConfig 実装SwaggerResourcesProvider { @オーバーライド 公共の一覧<SwaggerResource> GET(){ リソースの一覧 = 新しい新しいのArrayListは、<> (); // アプリケーション-itmayiedu-注文は // ゲートウェイはswaggerApiがエイリアス取得リモートサービス使用しています (swaggerResource( "ワンのApp-メンバー"、「/ワン加盟アプリ/ V2をresources.addを/ API-ドキュメント"" 2.0 " )); resources.add(swaggerResource( "APP-一weixin"、 "/ APP-一weixin / V2 / API-ドキュメント"、 "2.0" )); リターンリソース; } プライベートSwaggerResource swaggerResource(文字列名、文字列の位置、文字列バージョン){ SwaggerResource swaggerResource = 新しいSwaggerResource(); swaggerResource.setName(名); swaggerResource.setLocation(位置) swaggerResource.setSwaggerVersion(バージョン)。 リターンswaggerResource。 } } }
1.1.1。 スタート効果後