Свойства приложения внешнего интерфейса JHipster React (шлюз) - PullRequest
0 голосов
/ 27 февраля 2020

Я создаю микросервисное приложение JHipster, состоящее из микросервиса, реестра и шлюза (React). В приложении Microservice я могу использовать application.yml / ApplicatioProperties. java, чтобы добавить свойства (например, ключи API), которые могут изменяться в зависимости от среды (Dev, Prod et c).

Мой вопрос Могу ли я сделать то же самое в интерфейсе React? Это приложение Spring, поэтому на месте находятся одинаковые application.yml и ApplicationProperties. java. У кого-нибудь есть пример кода для настройки пользовательских свойств в пользовательском интерфейсе?

1 Ответ

0 голосов
/ 27 февраля 2020

Существует 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;
        }
    }
}
...