JHipster React 前端(网关)应用程序属性
JHipster React Front End (Gateway) Application Properties
我正在构建一个 JHipster 微服务应用程序,由微服务、注册表和网关 (React) 组成。
在微服务应用程序中,我可以使用 application.yml / ApplicatioProperties.java 添加属性(例如 API 键),这些属性可能会在环境(Dev、Prod 等)之间发生变化。
我的问题是,我可以在 React 前端做同样的事情吗?这是一个 Spring 应用程序,因此相同的 application.yml 和 ApplicationProperties.java 就位。有没有人有将自定义属性显示到 UI 的代码示例?
有一个 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;
}
}
}
我正在构建一个 JHipster 微服务应用程序,由微服务、注册表和网关 (React) 组成。 在微服务应用程序中,我可以使用 application.yml / ApplicatioProperties.java 添加属性(例如 API 键),这些属性可能会在环境(Dev、Prod 等)之间发生变化。
我的问题是,我可以在 React 前端做同样的事情吗?这是一个 Spring 应用程序,因此相同的 application.yml 和 ApplicationProperties.java 就位。有没有人有将自定义属性显示到 UI 的代码示例?
有一个 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;
}
}
}