【问题标题】:JHipster/Microservices frontend development hot reloadJHipster/微服务前端开发热重载
【发布时间】:2019-07-30 04:42:38
【问题描述】:

我已经创建了一个 JHipster 微服务应用程序,并希望对其进行一些前端开发。使用docker-compose up -d 在 ./docker-compose/ 目录中启动整个微服务堆栈按预期工作。 Registry 显示所有微服务、网关和状态为“up”的 UAA 实例。没有抛出异常。登录到http://localhost:8080 按预期工作。 在网关项目目录中启动 yarn start 通过 webpack 和 browsersync 启动开发服务器。将浏览器指向 http://localhost:9000 时,热重载会按预期工作。

现在我的问题/问题:以用户/用户身份登录 http://localhost:9000 不起作用,因为无法检索帐户。抛出的异常无关紧要,因为它只是声明帐户为空:

webpack-internal:///…fesm5/core.js:16064 ERROR Error: Uncaught (in promise): 
TypeError: Cannot read property 'langKey' of null
TypeError: Cannot read property 'langKey' of null
  at LoginService.setPreferredLanguage (webpack-internal:///… 
login.service.ts:34)
  ....

但是当我将浏览器指向http://localhost:8080 时,我以“用户”身份登录。这意味着后端的登录有效。

作为 docker 和微服务的新手,我怀疑我在概念上遗漏了一些东西(网络/端口/等..)。任何可以指出找到解决方案的想法?或者在 JHipster/微服务配置中开发前端的建议设置/实践是什么。

【问题讨论】:

    标签: docker-compose microservices jhipster browser-sync


    【解决方案1】:

    webpack.dev.js 配置文件中存在错误,并且由于后来将 UAA 添加到项目中,因此在要代理的上下文中缺少 UAA 模块:

    devServer: {
        contentBase: './build/www',
        proxy: [{
            context: [
                '/microservice1',
                '/microservice2',
                '/microserviceuaa',     /* !!! was missing !!! */
                /* jhipster-needle-add-entity-to-webpack - JHipster will add entity api paths here */
                '/api',
                '/management',
                '/swagger-resources',
                '/v2/api-docs',
                '/h2-console',
                '/auth'
            ],
            target: `http${options.tls ? 's' : ''}://127.0.0.1:8080`,
            secure: false,
            changeOrigin: options.tls,
            headers: { host: 'localhost:9000' }
        }],
    

    【讨论】:

      猜你喜欢
      • 2021-08-26
      • 1970-01-01
      • 2017-04-16
      • 1970-01-01
      • 2021-11-03
      • 1970-01-01
      • 2018-08-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多