假设:
问题:
http://localhost的所有请求都失败
var client = new HttpClient();
var result = await client.GetAsync("http://localhost/foo");
然后我得到
System.Net.Http.HttpRequestException:错误 发送请求时发生。 ---> System.Net.Http.CurlException:无法连接到服务器 在System.Net.Http.CurlHandler.ThrowIfCURLEError(CURLcode错误) 在System.Net.Http.CurlHandler.MultiAge ...
这是预期的吗?我认为从容器内部访问localhost应该工作。
其他协议如mongodb也在使用localhost。所以它似乎特定于asp连接的http连接?
答案 0 :(得分:0)
之前的一个问题:我认为您尝试访问的服务器位于同一容器中,对吧?
如果是:
您应该能够使用localhost从容器内进行连接。
问题可能是该容器内部没有暴露端口80。你能用" docker ps&#34 ;?检查端口内部端口吗?
如果不是:
在这种情况下,这意味着localhost用于连接到主机。我的理解是它不应该起作用。