如何在 Jhipster 中配置热重载?

Posted

技术标签:

【中文标题】如何在 Jhipster 中配置热重载?【英文标题】:How to configure hot reload in Jhipster? 【发布时间】:2019-07-01 08:02:09 【问题描述】:

我正在为我现有的项目使用 Jhipster(Angular + Springboot) 应用程序。

我设法手动创建了一个控制器(app.resource),除了 jhiptser 已经生成的控制器(使用 .jh 文件)来实现文件下载功能。

所以,当我们启动服务器时,我们通常会启动两个服务器,即gradlewnpm start。第二个在端口 9000 上运行,最终支持热重载功能。(前端开发)

所以问题是,我能够从运行在标准 8000 端口上的服务器访问这些端点。但是,从代理端口(9000),该方法返回 404。

我多次尝试清理构建应用程序。

注意:新控制器上的 @RequestMapping 值与已有的不同。

这和spring security有关系吗?

提前致谢。

这是之前的控制器:

@RestController
@RequestMapping("/api")
public class FGAppDiagramResource 
@GetMapping(value = "/fg-app-diagram-downloadFile")
    public void getImage(String fileName,String folderName, HttpServletResponse 
    response)
    // Some Code


这是我的新控制器:

@RestController
@RequestMapping("/fileDownload")
public class DownloadFileController 

private final Logger log = 
LoggerFactory.getLogger(DownloadFileController.class);


public DownloadFileController() 
    super();


@Autowired
private ApplicationProperties applicationProperties; 

@GetMapping(value = "/fg-app-diagram-downloadFile/fileName/folderName")
public void getImage(@PathVariable String fileName,@PathVariable String folderName, HttpServletResponse response) 
// Some Code


【问题讨论】:

请使用您更改的端点的 url 编辑您的问题。 我已经更新了这个问题。请检查... 【参考方案1】:

您的新控制器不使用 /api,因此您必须将端点 URL /fileDownload 添加到 webpack/webpack.dev.js 中的 webpack 开发服务器的代理配置中

    proxy: [
        context: [
            /* jhipster-needle-add-entity-to-webpack - JHipster will add entity api paths here */
            '/api',
            '/fileDownload',

您可能希望使用/api/fileDownload 来避免更改代理配置,并且因为/api 对许多其他方面(例如安全性)很有用,并且还可以在Angular 中使用html5 URL 路由策略来摆脱客户端路由中的#(见https://github.com/jhipster/generator-jhipster/pull/9098)。

/api/management 是避免路由冲突的命名空间,因此将它们用于新端点通常是明智的。

【讨论】:

这就像一个魅力。非常感谢您分享信息...

以上是关于如何在 Jhipster 中配置热重载?的主要内容,如果未能解决你的问题,请参考以下文章

如何在颤动时禁用自动热重载?

如何热重载包装在本机导入上下文中的模块?

如何在 Rider 中启用视图热重载? [复制]

如何在 NestJS 中热重载联邦网关

如何解决 Flutter 热重载问题

如何在 ReactJS Docker 中热重载