【问题标题】:How WebStorm runs Dart web appsWebStorm 如何运行 Dart 网络应用
【发布时间】:2016-02-25 06:38:30
【问题描述】:

在 WebStorm 中运行 Dart Web 应用程序时,?底部的窗格报告以下内容(--port 因运行而异):

/home/tom/dart-sdk/bin/pub serve web --port=46247
Loading source assets...
Loading polymer transformers...
Serving polymer_and_dart web on http://localhost:46247

但是,可以通过http://localhost:63342 访问该应用。

然而,当我从命令行运行pub serve 时,可以通过localhost:46247 访问该应用程序:

/home/tom/dart-sdk/bin/pub serve web --port=46247

如果不是为应用程序提供服务,有人可以解释 WebStorm 在指定端口做什么吗?

顺便说一句,我在开发中只使用 Dartium。

【问题讨论】:

    标签: dart webstorm dart-pub


    【解决方案1】:

    WebStorm 有一个集成的代理,它在自己的端口上进行侦听,并仅转发到pub serve 正在侦听的端口。

    pub serve 将在 Dart 2 中删除。

    目前 4/2018 没有将 pub run build_runner serve 与 IntelliJ 集成,但正在进行中。

    【讨论】:

      【解决方案2】:

      Webstorm 2018.1 似乎做了一些与代理有点不同的事情。 Webstorm 在调试端口上运行一个 Web 服务器,当它收到 GET http://localhost:{{debugPort}}/web/web/{{targetPage}} 时,它将以 302 重定向响应。重定向的 Location 标头将引用 Dart Web 应用中目标页面的实际位置。

      如果您在开发过程中需要以编程方式获取随机端口,您可以在 Webstorm 调试器设置中启用“允许未签名请求”,然后编写一些脚手架代码来获取 Location 标头。

      【讨论】:

      • 谢谢。下次我在 Webstorm 中发现自己时,您的回答可能会很有用。
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-11
      • 2013-05-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多