gpt4 book ai didi

angularjs - 尝试在网络中针对 Angular http请求运行时,容器别名名称不起作用

转载 作者:行者123 更新时间:2023-12-02 20:07:03 25 4
gpt4 key购买 nike

我有一个3服务的docker compose yml文件。 Spring Boot REST服务,mysql服务和 Angular 应用程序:

version: '3'
services:
container-mysql:
image: mysql
environment:
MYSQL_ROOT_PASSWORD: mypassword
container_name: container-mysql
container-angular-app:
build: angularjsapp
ports:
- '80:80'
depends_on:
- container-app
container_name: container-angular-app
container-app:
build: ../workspace/ContainerBackendBoot
depends_on:
- container-mysql
ports:
- '8080:8080'
container_name: container-app

我可以通过将application.properties db url设置为,从REST服务连接到我的mysql实例
spring.datasource.url=jdbc:mysql://container-mysql:3306/db?createDatabaseIfNotExist=true

但是,当我尝试像这样从 Angular 调用我的REST服务时:
var app = angular.module('myApp', []);
app.controller('myCtrl', function ($scope, $http) {
$http({
method: 'GET',
url: 'http://container-app:8080/container'
}).then(function successCallback(response) {
$scope.greeting = response.data;
}, function errorCallback(response) {
$scope.greeting = "Failed to connect to backend. Double check your network.";
});
});

我在Chrome浏览器中收到GET http://container-app:8080/container net::ERR_NAME_NOT_RESOLVED错误。

为什么我不能使用别名“container-app”从 Angular 连接到REST服务?

最佳答案

您缺少docker-compose.yml上的链接

需要添加这样的东西

链接:
-容器应用

关于angularjs - 尝试在网络中针对 Angular http请求运行时,容器别名名称不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48891713/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com