{"id":23964573,"url":"https://github.com/firlucky/fir-cloud","last_synced_at":"2026-05-16T19:39:29.307Z","repository":{"id":238805249,"uuid":"797614740","full_name":"firLucky/fir-cloud","owner":"firLucky","description":"杉极简网关：基于Spring Cloud Alibaba 2021.0.5.0，Spring Boot 2.6.13实现的前后端分布式安全网关，可实现令牌校验，整体加密，防重放，完整性，xss，ip白名单等安全校验。","archived":false,"fork":false,"pushed_at":"2024-05-11T14:00:14.000Z","size":250,"stargazers_count":0,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-24T13:48:12.274Z","etag":null,"topics":["java","java-8","security","springboot","springcloud"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/firLucky.png","metadata":{"files":{"readme":"README.assets/FirCloud.svg","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-05-08T07:25:00.000Z","updated_at":"2024-05-15T14:37:08.000Z","dependencies_parsed_at":"2025-02-24T13:41:32.476Z","dependency_job_id":"76fe3661-ed70-4b88-8237-052d3d39abbb","html_url":"https://github.com/firLucky/fir-cloud","commit_stats":null,"previous_names":["firlucky/fir-cloud"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/firLucky/fir-cloud","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/firLucky%2Ffir-cloud","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/firLucky%2Ffir-cloud/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/firLucky%2Ffir-cloud/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/firLucky%2Ffir-cloud/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/firLucky","download_url":"https://codeload.github.com/firLucky/fir-cloud/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/firLucky%2Ffir-cloud/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":33116686,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-16T18:38:32.183Z","status":"ssl_error","status_checked_at":"2026-05-16T18:38:29.903Z","response_time":115,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["java","java-8","security","springboot","springcloud"],"created_at":"2025-01-06T21:49:34.283Z","updated_at":"2026-05-16T19:39:29.300Z","avatar_url":"https://github.com/firLucky.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003c?xml version=\"1.0\" encoding=\"UTF-8\"?\u003e\n\u003c!DOCTYPE svg PUBLIC \"-//W3C//DTD SVG 1.1//EN\" \"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd\"\u003e\n\u003csvg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" version=\"1.1\" width=\"1616px\" height=\"701px\" viewBox=\"-0.5 -0.5 1616 701\" style=\"background-color: rgb(250, 250, 250);\"\u003e\u003cdefs/\u003e\u003cg\u003e\u003crect x=\"0\" y=\"0\" width=\"1615\" height=\"700\" fill=\"#fafafa\" stroke=\"rgb(0, 0, 0)\" pointer-events=\"all\"/\u003e\u003crect x=\"335\" y=\"55\" width=\"210\" height=\"590\" fill=\"#dae8fc\" stroke=\"#6c8ebf\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 1px; height: 1px; padding-top: 66px; margin-left: 385px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: left;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 14px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;\"\u003e\u003cfont style=\"font-size: 18px;\"\u003e前端安全拦截器\u003c/font\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"385\" y=\"80\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"14px\"\u003e前端安全拦截器\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003cpath d=\"M 440 165 L 440 185 L 440 175 L 440 188.63\" fill=\"none\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"stroke\"/\u003e\u003cpath d=\"M 440 193.88 L 436.5 186.88 L 440 188.63 L 443.5 186.88 Z\" fill=\"rgb(0, 0, 0)\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"all\"/\u003e\u003crect x=\"380\" y=\"105\" width=\"120\" height=\"60\" fill=\"rgb(255, 255, 255)\" stroke=\"rgb(0, 0, 0)\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 135px; margin-left: 381px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: center;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;\"\u003e请求白名单\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"440\" y=\"139\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"12px\" text-anchor=\"middle\"\u003e请求白名单\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003cpath d=\"M 440 255 L 440 275 L 440 265 L 440 278.63\" fill=\"none\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"stroke\"/\u003e\u003cpath d=\"M 440 283.88 L 436.5 276.88 L 440 278.63 L 443.5 276.88 Z\" fill=\"rgb(0, 0, 0)\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"all\"/\u003e\u003crect x=\"380\" y=\"195\" width=\"120\" height=\"60\" fill=\"rgb(255, 255, 255)\" stroke=\"rgb(0, 0, 0)\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 225px; margin-left: 381px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: center;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;\"\u003e添加请求头数据\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"440\" y=\"229\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"12px\" text-anchor=\"middle\"\u003e添加请求头数据\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003cpath d=\"M 440 345 L 440 365 L 440 355 L 440 368.63\" fill=\"none\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"stroke\"/\u003e\u003cpath d=\"M 440 373.88 L 436.5 366.88 L 440 368.63 L 443.5 366.88 Z\" fill=\"rgb(0, 0, 0)\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"all\"/\u003e\u003crect x=\"380\" y=\"285\" width=\"120\" height=\"60\" fill=\"rgb(255, 255, 255)\" stroke=\"rgb(0, 0, 0)\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 315px; margin-left: 381px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: center;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;\"\u003e添加防重放信息\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"440\" y=\"319\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"12px\" text-anchor=\"middle\"\u003e添加防重放信息\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003cpath d=\"M 440 435 L 440 455 L 440 445 L 440 458.63\" fill=\"none\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"stroke\"/\u003e\u003cpath d=\"M 440 463.88 L 436.5 456.88 L 440 458.63 L 443.5 456.88 Z\" fill=\"rgb(0, 0, 0)\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"all\"/\u003e\u003crect x=\"380\" y=\"375\" width=\"120\" height=\"60\" fill=\"rgb(255, 255, 255)\" stroke=\"rgb(0, 0, 0)\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 405px; margin-left: 381px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: center;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;\"\u003e添加完整性校验信息\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"440\" y=\"409\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"12px\" text-anchor=\"middle\"\u003e添加完整性校验信息\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003cpath d=\"M 440 525 L 440 545 L 440 535 L 440 548.63\" fill=\"none\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"stroke\"/\u003e\u003cpath d=\"M 440 553.88 L 436.5 546.88 L 440 548.63 L 443.5 546.88 Z\" fill=\"rgb(0, 0, 0)\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"all\"/\u003e\u003crect x=\"380\" y=\"465\" width=\"120\" height=\"60\" fill=\"rgb(255, 255, 255)\" stroke=\"rgb(0, 0, 0)\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 495px; margin-left: 381px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: center;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;\"\u003e数据整体对称加密\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"440\" y=\"499\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"12px\" text-anchor=\"middle\"\u003e数据整体对称加密\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003crect x=\"380\" y=\"555\" width=\"120\" height=\"60\" fill=\"rgb(255, 255, 255)\" stroke=\"rgb(0, 0, 0)\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 585px; margin-left: 381px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: center;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;\"\u003e数据非对称加密\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"440\" y=\"589\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"12px\" text-anchor=\"middle\"\u003e数据非对称加密\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003cpath d=\"M 1160 350 L 1245 350 L 1245 125 L 1323.63 125\" fill=\"none\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"stroke\"/\u003e\u003cpath d=\"M 1328.88 125 L 1321.88 128.5 L 1323.63 125 L 1321.88 121.5 Z\" fill=\"rgb(0, 0, 0)\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"all\"/\u003e\u003cpath d=\"M 1160 350 L 1323.63 350\" fill=\"none\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"stroke\"/\u003e\u003cpath d=\"M 1328.88 350 L 1321.88 353.5 L 1323.63 350 L 1321.88 346.5 Z\" fill=\"rgb(0, 0, 0)\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"all\"/\u003e\u003cpath d=\"M 1160 350 L 1245 350 L 1245 555 L 1323.63 555\" fill=\"none\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"stroke\"/\u003e\u003cpath d=\"M 1328.88 555 L 1321.88 558.5 L 1323.63 555 L 1321.88 551.5 Z\" fill=\"rgb(0, 0, 0)\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"all\"/\u003e\u003crect x=\"720\" y=\"55\" width=\"440\" height=\"590\" fill=\"#dae8fc\" stroke=\"#6c8ebf\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 1px; height: 1px; padding-top: 66px; margin-left: 770px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: left;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 14px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;\"\u003e\u003cfont style=\"font-size: 18px;\"\u003e   Gatway网关\u003c/font\u003e\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"770\" y=\"80\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"14px\"\u003e   Gatway网关\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003cpath d=\"M 830 165 L 830 185 L 830 175 L 830 188.63\" fill=\"none\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"stroke\"/\u003e\u003cpath d=\"M 830 193.88 L 826.5 186.88 L 830 188.63 L 833.5 186.88 Z\" fill=\"rgb(0, 0, 0)\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"all\"/\u003e\u003crect x=\"770\" y=\"105\" width=\"120\" height=\"60\" fill=\"rgb(255, 255, 255)\" stroke=\"rgb(0, 0, 0)\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 135px; margin-left: 771px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: center;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;\"\u003e访问来源记录\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"830\" y=\"139\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"12px\" text-anchor=\"middle\"\u003e访问来源记录\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003cpath d=\"M 830 255 L 830 275 L 830 265 L 830 278.63\" fill=\"none\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"stroke\"/\u003e\u003cpath d=\"M 830 283.88 L 826.5 276.88 L 830 278.63 L 833.5 276.88 Z\" fill=\"rgb(0, 0, 0)\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"all\"/\u003e\u003crect x=\"770\" y=\"195\" width=\"120\" height=\"60\" fill=\"rgb(255, 255, 255)\" stroke=\"rgb(0, 0, 0)\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 225px; margin-left: 771px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: center;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;\"\u003e令牌token校验拦截器\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"830\" y=\"229\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"12px\" text-anchor=\"middle\"\u003e令牌token校验拦截器\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003cpath d=\"M 830 345 L 830 365 L 830 355 L 830 368.63\" fill=\"none\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"stroke\"/\u003e\u003cpath d=\"M 830 373.88 L 826.5 366.88 L 830 368.63 L 833.5 366.88 Z\" fill=\"rgb(0, 0, 0)\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"all\"/\u003e\u003crect x=\"770\" y=\"285\" width=\"120\" height=\"60\" fill=\"rgb(255, 255, 255)\" stroke=\"rgb(0, 0, 0)\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 315px; margin-left: 771px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: center;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;\"\u003e整体解密拦截器\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"830\" y=\"319\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"12px\" text-anchor=\"middle\"\u003e整体解密拦截器\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003cpath d=\"M 830 435 L 830 455 L 830 445 L 830 458.63\" fill=\"none\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"stroke\"/\u003e\u003cpath d=\"M 830 463.88 L 826.5 456.88 L 830 458.63 L 833.5 456.88 Z\" fill=\"rgb(0, 0, 0)\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"all\"/\u003e\u003crect x=\"770\" y=\"375\" width=\"120\" height=\"60\" fill=\"rgb(255, 255, 255)\" stroke=\"rgb(0, 0, 0)\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 405px; margin-left: 771px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: center;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;\"\u003e防重放拦截器\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"830\" y=\"409\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"12px\" text-anchor=\"middle\"\u003e防重放拦截器\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003cpath d=\"M 830 525 L 830 545 L 830 535 L 830 548.63\" fill=\"none\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"stroke\"/\u003e\u003cpath d=\"M 830 553.88 L 826.5 546.88 L 830 548.63 L 833.5 546.88 Z\" fill=\"rgb(0, 0, 0)\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"all\"/\u003e\u003crect x=\"770\" y=\"465\" width=\"120\" height=\"60\" fill=\"rgb(255, 255, 255)\" stroke=\"rgb(0, 0, 0)\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 495px; margin-left: 771px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: center;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;\"\u003e完整性检验拦截器\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"830\" y=\"499\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"12px\" text-anchor=\"middle\"\u003e完整性检验拦截器\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003cpath d=\"M 890 585 L 1080 585 L 1080 396.37\" fill=\"none\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"stroke\"/\u003e\u003cpath d=\"M 1080 391.12 L 1083.5 398.12 L 1080 396.37 L 1076.5 398.12 Z\" fill=\"rgb(0, 0, 0)\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"all\"/\u003e\u003crect x=\"770\" y=\"555\" width=\"120\" height=\"60\" fill=\"rgb(255, 255, 255)\" stroke=\"rgb(0, 0, 0)\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 585px; margin-left: 771px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: center;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;\"\u003eXSS拦截器\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"830\" y=\"589\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"12px\" text-anchor=\"middle\"\u003eXSS拦截器\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003cpath d=\"M 545 350 L 713.63 350\" fill=\"none\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"stroke\"/\u003e\u003cpath d=\"M 718.88 350 L 711.88 353.5 L 713.63 350 L 711.88 346.5 Z\" fill=\"rgb(0, 0, 0)\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"all\"/\u003e\u003crect x=\"595\" y=\"305\" width=\"60\" height=\"30\" fill=\"#dae8fc\" stroke=\"#6c8ebf\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe center; justify-content: unsafe center; width: 58px; height: 1px; padding-top: 320px; margin-left: 596px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: center;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;\"\u003eHTTP\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"625\" y=\"324\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"12px\" text-anchor=\"middle\"\u003eHTTP\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003crect x=\"1330\" y=\"55\" width=\"200\" height=\"140\" fill=\"#dae8fc\" stroke=\"#6c8ebf\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 1px; height: 1px; padding-top: 66px; margin-left: 1380px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: left;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 14px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;\"\u003e       微服务A\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"1380\" y=\"80\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"14px\"\u003e       微服务A\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003crect x=\"1370\" y=\"105\" width=\"120\" height=\"60\" fill=\"rgb(255, 255, 255)\" stroke=\"rgb(0, 0, 0)\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 135px; margin-left: 1371px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: center;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;\"\u003e业务处理\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"1430\" y=\"139\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"12px\" text-anchor=\"middle\"\u003e业务处理\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003cellipse cx=\"1080\" cy=\"350\" rx=\"60\" ry=\"40\" fill=\"rgb(255, 255, 255)\" stroke=\"rgb(0, 0, 0)\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 350px; margin-left: 1021px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: center;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;\"\u003e负载均衡\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"1080\" y=\"354\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"12px\" text-anchor=\"middle\"\u003e负载均衡\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003crect x=\"1330\" y=\"280\" width=\"200\" height=\"140\" fill=\"#dae8fc\" stroke=\"#6c8ebf\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 1px; height: 1px; padding-top: 291px; margin-left: 1380px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: left;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 14px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;\"\u003e       微服务B\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"1380\" y=\"305\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"14px\"\u003e       微服务B\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003crect x=\"1330\" y=\"485\" width=\"200\" height=\"140\" fill=\"#dae8fc\" stroke=\"#6c8ebf\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 1px; height: 1px; padding-top: 496px; margin-left: 1380px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: left;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 14px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;\"\u003e       微服务C\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"1380\" y=\"510\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"14px\"\u003e       微服务C\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003crect x=\"1370\" y=\"535\" width=\"120\" height=\"60\" fill=\"rgb(255, 255, 255)\" stroke=\"rgb(0, 0, 0)\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 565px; margin-left: 1371px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: center;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;\"\u003e业务处理\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"1430\" y=\"569\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"12px\" text-anchor=\"middle\"\u003e业务处理\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003crect x=\"1370\" y=\"329\" width=\"120\" height=\"60\" fill=\"rgb(255, 255, 255)\" stroke=\"rgb(0, 0, 0)\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 359px; margin-left: 1371px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: center;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;\"\u003e业务处理\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"1430\" y=\"363\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"12px\" text-anchor=\"middle\"\u003e业务处理\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003cpath d=\"M 260 350 L 328.63 350\" fill=\"none\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"stroke\"/\u003e\u003cpath d=\"M 333.88 350 L 326.88 353.5 L 328.63 350 L 326.88 346.5 Z\" fill=\"rgb(0, 0, 0)\" stroke=\"rgb(0, 0, 0)\" stroke-miterlimit=\"10\" pointer-events=\"all\"/\u003e\u003crect x=\"60\" y=\"280\" width=\"200\" height=\"140\" fill=\"#dae8fc\" stroke=\"#6c8ebf\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe flex-start; justify-content: unsafe flex-start; width: 1px; height: 1px; padding-top: 291px; margin-left: 110px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: left;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 14px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: nowrap;\"\u003e       web端\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"110\" y=\"305\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"14px\"\u003e       web端\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003crect x=\"100\" y=\"330\" width=\"120\" height=\"60\" fill=\"rgb(255, 255, 255)\" stroke=\"rgb(0, 0, 0)\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe center; justify-content: unsafe center; width: 118px; height: 1px; padding-top: 360px; margin-left: 101px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: center;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 12px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; white-space: normal; overflow-wrap: normal;\"\u003e业务处理\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"160\" y=\"364\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"12px\" text-anchor=\"middle\"\u003e业务处理\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003crect x=\"90\" y=\"25\" width=\"100\" height=\"40\" fill=\"none\" stroke=\"none\" pointer-events=\"all\"/\u003e\u003cg transform=\"translate(-0.5 -0.5)\"\u003e\u003cswitch\u003e\u003cforeignObject pointer-events=\"none\" width=\"100%\" height=\"100%\" requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\" style=\"overflow: visible; text-align: left;\"\u003e\u003cdiv xmlns=\"http://www.w3.org/1999/xhtml\" style=\"display: flex; align-items: unsafe center; justify-content: unsafe center; width: 1px; height: 1px; padding-top: 45px; margin-left: 140px;\"\u003e\u003cdiv data-drawio-colors=\"color: rgb(0, 0, 0); \" style=\"box-sizing: border-box; font-size: 0px; text-align: center;\"\u003e\u003cdiv style=\"display: inline-block; font-size: 24px; font-family: Helvetica; color: rgb(0, 0, 0); line-height: 1.2; pointer-events: all; font-weight: bold; white-space: nowrap;\"\u003eFir Cloud 执行流程图\u003c/div\u003e\u003c/div\u003e\u003c/div\u003e\u003c/foreignObject\u003e\u003ctext x=\"140\" y=\"52\" fill=\"rgb(0, 0, 0)\" font-family=\"Helvetica\" font-size=\"24px\" text-anchor=\"middle\" font-weight=\"bold\"\u003eFir Clou...\u003c/text\u003e\u003c/switch\u003e\u003c/g\u003e\u003c/g\u003e\u003cswitch\u003e\u003cg requiredFeatures=\"http://www.w3.org/TR/SVG11/feature#Extensibility\"/\u003e\u003ca transform=\"translate(0,-5)\" xlink:href=\"https://www.drawio.com/doc/faq/svg-export-text-problems\" target=\"_blank\"\u003e\u003ctext text-anchor=\"middle\" font-size=\"10px\" x=\"50%\" y=\"100%\"\u003eText is not SVG - cannot display\u003c/text\u003e\u003c/a\u003e\u003c/switch\u003e\u003c/svg\u003e","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffirlucky%2Ffir-cloud","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ffirlucky%2Ffir-cloud","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ffirlucky%2Ffir-cloud/lists"}