如何允许在Angular2中访问本地主机之外的对象?我可以在localhost:3030/panel轻松导航,但当我写我的IP如10.123.14.12:3030/panel/时,我无法导航。

您能告诉我怎么修吗?我没有使用npm(节点项目管理-节点安装/节点启动)来安装和运行项目。

如果你需要,我可以提供我的包裹。Json和index.html。


当前回答

Ng serve——host 0.0.0.0将允许您使用自己的IP而不是本地主机连接到Ng serve。 打开浏览器到<IP-ADDRESS>:4200 使用ng serve——host 0.0.0.0——disable-host-check将允许您使用您的域而不是localhost连接到ng serve。 打开浏览器到<DOMAIN-NAME>:4200

其他回答

我只是编辑了angular。Json文件在我的项目如下,它的工作

...

    "serve": {
    "builder": "@angular-devkit/build-angular:dev-server",
    "options": {
      "browserTarget": "project:build",
      "host": "0.0.0.0"
    },
...

使用ng serve——host<您的IP>——port<如果有>则必须使用。 Ng serve——host=192.111.1.11——port=4545.使用实例 现在可以在编译结束时看到下面这行代码。

Angular Live Development Server正在监听192.111.1.11:4545,打开浏览器http://192.111.1.11:4545/ **。

对我来说,它使用“ng serve -open -host 0.0.0.0”,但有一个警告


警告:这是一个简单的服务器,用于测试或调试Angular应用程序 本地。它还没有被审查安全问题。

将此服务器绑定到打开的连接可能会损害您的应用程序或 电脑。使用不同于传递给"——host"标志的主机可能会导致 Websocket连接问题。你可能需要使用"——disableHostCheck"如果那是 的情况。

ng serve --open --host 0.0.0.0 --disable-host-check

这对我来说非常有效(甚至使用一个a主机指向该IP的公共IP)。

使用ng serve——host 0.0.0.0命令解决了我的问题。使用192.168.x。X:5200才能从另一台机器上访问应用程序。

此外,检查客户端和服务器上的防火墙规则(暂时禁用防火墙或创建允许流量的规则)