2

当我尝试通过ng serve --host 0.0.0.0. 我尝试了以下方法。1.install -g angular-cli 2. cd 到该应用程序目录 3. 更改 angular-cli.json 中的端口

"defaults": {
    "styleExt": "css",
    "component": {},
    "serve": {
              "port": 1337
             }
  }
  1. ng 服务 --host 0.0.0.0
  2. 浏览器中请求的 url 是http://port-1337.angular2-jobproject0889272.codeanyapp.com/

    容器和浏览器的屏幕截图

4

2 回答 2

3

我正在寻求解决一个不同的问题,并遇到了一个可能对你有用的答案。

ng serve --port 8080 --host 0.0.0.0 --disableHostCheck true

Angular-cli GitHub

于 2017-12-01T17:46:09.617 回答
0

如果我正确理解您的问题,那么您的问题可能源于 Webpack 的安全隐含。
由于 Angular CLI 默认使用 Webpack 来捆绑您的应用程序,因此在使用“ng serve”时您必须遵守其要求。Webpack 生成的应用程序包现在要求请求的 Host 标头匹配监听地址或公共选项中提供的主机。

public 选项是通过“ng serve”命令传递的 --public 标志。在 CodeAnywhere 上,您很可能还应该注意指明端口号。一个有效的“ng serve”命令可能如下所示: $ ng serve --host 0.0.0.0 --port 3000 --public myproject-myusername.codeanyapp.com

(对于 HTTPS 服务,CodeAnywhere 要求您使用端口 3000)

您可以通过右键单击项目的树视图连接图标并选择“信息”选项,在 CodeAnywhere IDE 中找到 --public 标志的特定值。

为简化起见,您可以在 package.json 文件中进行设置,然后使用以下命令启动 Angular 服务器: $ npm start

例如,您可以修改 package.json “scripts”条目的“start”元素,如下所示: "scripts": { "ng": "ng", "start": "ng serve --host 0.0.0.0 --port 3000 --public myproject-myusername.codeanyapp.com" }

希望此信息适用于您面临的问题。祝你好运!

于 2018-01-18T03:06:48.763 回答