Hyperledger REST服务器Angular Web App无法连接到localhost之外的REST服务器

时间:2017-10-04 11:05:21

标签: angular angular-cli webpack-dev-server hyperledger hyperledger-composer

我正在按照伟大的Hyperledger Composer教程here开始使用。我设法让所有东西都运行起来,包括REST服务器和Skeleton Angular Web应用程序。

当我尝试在localhost之外使用应用程序时出现问题。我可以在端口3000上访问REST服务器并与之交互(添加,删除,更新)。我也可以访问应用程序(端口4200),但是当我尝试与它进行交互时,我得到以下内容:

Error: Could not connect to REST server. Please check your configuration details

我尝试更新angular-cli以支持我当前的启动脚本:ng serve --host 0.0.0.0 --disable-host-check --public my.ip.address.here:4200它似乎正在工作,因为我收到了关于禁用主机检查的安全警告,但它没有解决问题。

我们非常感谢任何建议。先感谢您。

4 个答案:

答案 0 :(得分:1)

听起来你需要给它一个可以解析的主机名。

我相信它在您生成的应用程序目录中的server / config.json文件中的“host:”参数中分配新的主机名或IP(并确保您可以在网络上访问它,例如路由等)。

答案 1 :(得分:1)

我解决了。很容易解决。我需要编辑文件:my-app / src / app / configuration.ts。这条线

public ApiIP: string = "localhost";

将其更改为外部IP。

答案 2 :(得分:1)

我有这样的环境:

Hyperledger Fabric v1.2
firefox v61.0.2 , node v8.11.3, Composer v0.20, yo v2.0.5
macOS 10.13.5

我遇到了同样的错误,因此我更改了“在生成的REST API中使用命名空间吗?”的答案。从“不使用命名空间”到“使用命名空间”,它确实有效,我不确定这是否会对您有所帮助。

答案 3 :(得分:0)

我选择了使用的名称空间,而且您还必须使用npm start而不是ng serve启动angular应用 这两件事解决了我的问题,希望对您有所帮助。