【问题标题】:Aurelia .NET Core - Browser sync not working on .NET CoreAurelia .NET Core - 浏览器同步在 .NET Core 上不起作用
【发布时间】:2017-06-21 19:13:36
【问题描述】:

我按照 this 教程学习了如何将 Aurelia/Aurelia CLI 与 .NET Core 一起使用。

我必须做出的改变:

  • 必须针对 Microsoft.DotNet.Watcher.Tools 的特定版本,(dotnet watch run 命令不起作用
  • 更改了 aurelia.json => 构建 => 目标 => 来自“.”的输出值到“wwwroot/scripts”,(端口:9000 不起作用,错误消息:“无法 GET / 到服务器”,但是 .NET Core 服务的端口 5000 工作)。
  • tasks => run.js => browsersync => server => basedir 值从 ['.'] 到 ['./wwwroot'],(修复浏览器同步在端口:9000 上不起作用,但仍然无法在 .NET Core 提供的端口:5000 上工作)

1.如何使浏览器同步在 .NET Core 服务的端口:5000 上工作?

它必须在 run.js 文件中。我试过了:

let serve = gulp.series(
  build,
  done => {
    browserSync({
        open: false,
        port: 9000,
        logLevel: 'silent',
        proxy: {
        target: 'localhost:5000'
      }
      }, function(err, bs) {
        let urls = bs.options.get('urls').toJS();
        console.log(`Application Available At: ${urls.local}`);
        console.log(`BrowserSync Available At: ${urls.ui}`);
        done();
    });
  }
);

..没有成功..

2。我在 port:5000 还是 port:9000 上开发有关系吗?

3.在 .NET Core 中托管 Aurelia 有什么意义? 我应该只将 .NET Core 用于 WepAPI 等吗?

【问题讨论】:

  • 我给那篇博文的作者发了一条消息,请他看看这个问题。希望我们能收到他的回音。

标签: asp.net-core .net-core aurelia


【解决方案1】:

我认为你正在以一种非常非正统的方式来解决这个问题。

  1. 继续使用你所拥有的。标准是在端口 5000 上托管 .NET Core 项目,在端口 9000 上托管浏览器同步。 您不能将 .NET Core 项目和 Browser 同步托管在同一个端口上,而将 .NET Core 项目弄乱只是为了将 Browser 同步移动到端口 5000 只是徒劳无功。

  2. 您开发了一个 Aurelia 应用程序,无论您决定将其托管在哪个端口上都无关紧要 :)

  3. 我想提供一个替代方案,因为大多数教程都侧重于在 Node.js 上进行开发。此外,我个人喜欢 MSFT 生态系统,当我使用任何站点时,它都在 Azure 中。所以对我来说这更有意义。

我建议您使用任何能让您高效的技术,以及对您选择的生产环境有意义的任何技术。

【讨论】:

  • 抱歉忘记问了!在您的示例中,您有一个 Aurelia 项目和一个 WebAPI 项目。当您发布到 Azure 时,这不会导致问题吗?您不需要将它们都发布吗?合并这两个项目不是更好吗? CORS也有困难?谢谢
  • 是的,是的,不一定,是的!设置会导致问题,解决问题是重点。至少有几个版本的浏览器支持 Fetch 实现的问题,所以对于那些需要这种项目的人来说,这是一个很好的早期发现。 CORS 也是一个问题,但这让我们有机会在 .NET Core 项目的设置中查看并修复它。至于必须将它们一起发布 - 没必要。大多数情况下,您将只针对纯 API 工作,无论您正在实施何种类型的项目。但是如果你正在开发一个小项目,那就没必要了。
  • 如果您不介意,我有一个迟到的问题要问您:) 在您的教程中,您提到 API 不应与 SPA 托管在同一个项目中。这是为什么?我不明白为什么这是一种不好的做法..
  • 这取决于项目的规模、您打算如何托管它、涉及多少团队等。如果它只是一个小型的单人项目,那么不用担心。但是对于较大的应用程序,恕我直言,最好尽可能将 Web 项目和 API 解耦。这将为您带来许多好处,并且随着您的应用程序/API 的增长而变得更加有用。
猜你喜欢
  • 2019-07-29
  • 2018-04-16
  • 2021-10-22
  • 2017-10-21
  • 1970-01-01
  • 1970-01-01
  • 2019-10-27
  • 2021-10-30
  • 2021-03-03
相关资源
最近更新 更多