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

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

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


当前回答

打开cmd并导航到项目位置,即为项目运行npm install或ng serve的位置。

然后执行命令- ng serve——host 10.202.32.45,其中10.202.32.45是您的IP地址。

您将能够在10.202.32.45:4200访问您的页面,其中4200是您的端口号。

注意:如果你使用这个命令服务你的应用程序,那么你将无法访问localhost:4200

其他回答

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

...

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

Mac用户:

进入“系统首选项->网络-> Wi-Fi” 复制状态下面的IP地址(通常是192.168.1.x) 把它粘贴到你的ng serve中,比如:ng serve——host 192.168.1.x

然后,您必须能够通过192.168.1.x:4200在其他设备上看到您的页面。

不包。Json需要更改。

对我来说,它的工作原理是:

ng serve --host=0.0.0.0 --port=5999 --disable-host-check

主持人:http://localhost: 5999 /

对于使用节点项目管理器的人,这一行也添加到包中。Json就足够了。对于angular CLI用户来说,mast3rd3mon的答案是正确的。

你可以添加

"server": "webpack-dev-server --inline --progress --host 0.0.0.0 --port 3000"

对package.json

使用ng serve——host 0.0.0.0将允许您使用您的ip而不是localhost连接到ng serve。

EDIT

在较新的cli版本中,您必须提供本地ip地址

编辑2

在cli的新版本中(我认为是v5或更高版本),您可以再次使用0.0.0.0作为ip,为网络上的任何人托管它。

顺便提一下 确保您的连接在操作系统设置中设置为Public。