如何允许在Angular2中访问本地主机之外的对象?我可以在localhost:3030/panel轻松导航,但当我写我的IP如10.123.14.12:3030/panel/时,我无法导航。
您能告诉我怎么修吗?我没有使用npm(节点项目管理-节点安装/节点启动)来安装和运行项目。
如果你需要,我可以提供我的包裹。Json和index.html。
如何允许在Angular2中访问本地主机之外的对象?我可以在localhost:3030/panel轻松导航,但当我写我的IP如10.123.14.12:3030/panel/时,我无法导航。
您能告诉我怎么修吗?我没有使用npm(节点项目管理-节点安装/节点启动)来安装和运行项目。
如果你需要,我可以提供我的包裹。Json和index.html。
当前回答
在Angular版本11(也许还有一些更早的版本)中,public-host选项对我来说很有用,例如:
$ ng serve --host 0.0.0.0 --public-host app.mypublicdomain.com
其他回答
对我来说,它使用“ng serve -open -host 0.0.0.0”,但有一个警告
警告:这是一个简单的服务器,用于测试或调试Angular应用程序 本地。它还没有被审查安全问题。
将此服务器绑定到打开的连接可能会损害您的应用程序或 电脑。使用不同于传递给"——host"标志的主机可能会导致 Websocket连接问题。你可能需要使用"——disableHostCheck"如果那是 的情况。
不包。Json需要更改。
对我来说,它的工作原理是:
ng serve --host=0.0.0.0 --port=5999 --disable-host-check
主持人:http://localhost: 5999 /
使用ng serve——host 0.0.0.0命令解决了我的问题。使用192.168.x。X:5200才能从另一台机器上访问应用程序。
此外,检查客户端和服务器上的防火墙规则(暂时禁用防火墙或创建允许流量的规则)
打开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
如果你在Docker内部遇到同样的问题,那么你可以在Dockerfile中使用下面的CMD。
CMD ["ng", "serve", "--host", "0.0.0.0"]
或完成Dockerfile
FROM node:alpine
WORKDIR app
RUN npm install -g @angular/cli
COPY . .
CMD ["ng", "serve", "--host", "0.0.0.0"]