【问题标题】:JHipster React Front End (Gateway) Application PropertiesJHipster React 前端(网关)应用程序属性
【发布时间】:2020-06-10 23:42:36
【问题描述】:

我正在构建一个 JHipster 微服务应用程序,由微服务、注册表和网关 (React) 组成。 在微服务应用程序中,我可以使用 application.yml / ApplicatioProperties.java 添加可能在环境(Dev、Prod 等)之间更改的属性(例如 API 密钥)。

我的问题是,我可以在 React 前端做同样的事情吗?这是一个 Spring 应用程序,因此具有相同的 application.yml 和 ApplicationProperties.java。有没有人有将自定义属性呈现到 UI 的代码示例?

【问题讨论】:

    标签: reactjs microservices jhipster


    【解决方案1】:

    有一个AuthInfoResource 接受属性并使它们在/api/auth-info 端点上可用。您可以使用类似的方式向您的 React 应用程序公开配置属性。

    package <%= packageName %>.web.rest;
    
    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.web.bind.annotation.GetMapping;
    import org.springframework.web.bind.annotation.RequestMapping;
    import org.springframework.web.bind.annotation.RestController;
    
    /**
     * Resource to return information about OIDC properties
     */
    @RestController
    @RequestMapping("/api")
    public class AuthInfoResource {
    
        @Value("${spring.security.oauth2.client.provider.oidc.issuer-uri:}")
        private String issuer;
        @Value("${spring.security.oauth2.client.registration.oidc.client-id:}")
        private String clientId;
    
    
        @GetMapping("/auth-info")
        public AuthInfoVM getAuthInfo() {
            return new AuthInfoVM(issuer, clientId);
        }
    
        class AuthInfoVM {
            private String issuer;
            private String clientId;
    
            AuthInfoVM(String issuer, String clientId) {
                this.issuer = issuer;
                this.clientId = clientId;
            }
    
            public String getIssuer() {
                return this.issuer;
            }
    
            public void setIssuer(String issuer) {
                this.issuer = issuer;
            }
    
            public String getClientId() {
                return clientId;
            }
    
            public void setClientId(String clientId) {
                this.clientId = clientId;
            }
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2021-05-15
      • 2017-08-09
      • 1970-01-01
      • 2021-02-09
      • 1970-01-01
      • 2021-12-25
      • 2020-11-23
      • 2021-06-05
      • 1970-01-01
      相关资源
      最近更新 更多