【发布时间】:2020-09-02 19:46:07
【问题描述】:
我有以下代码:
var url = "http://myComputer.myDomain.net:44344/Testing/TestCall";
var httpClient = new HttpClient();
var httpResponse = await httpClient.GetAsync(url);
var content = await httpResponse.Content.ReadAsStringAsync();
当我运行它时,我会抛出以下异常:
System.Net.Sockets.SocketException (0xFFFDFFFF): Name or service not known
at System.Net.Http.ConnectHelper.ConnectAsync(String host, Int32 port, CancellationToken cancellationToken)
内部例外:
System.Net.Http.HttpRequestException: Name or service not known
---> System.Net.Sockets.SocketException (0xFFFDFFFF): Name or service not known
at System.Net.Http.ConnectHelper.ConnectAsync(String host, Int32 port, CancellationToken cancellationToken)
还有额外的调用堆栈,但我不认为它有用...
真正奇怪的是,如果我将 URL (http://myComputer.myDomain.net:44344/Testing/TestCall) 放入浏览器中,它会很好地在我的服务上运行调用并返回预期的输出。
为什么会出现“名称或服务未知”异常,但相同的 URL 在浏览器中可以正常工作?
附加信息:如果我将 url 替换为 "http://google.com",那么它可以正常工作。这让我觉得这是我的服务。但是从浏览器加载的服务很好......我很困惑。
【问题讨论】:
-
您能否添加您的
Startup.cs代码+ 确保您已导入或下载System.Net.Http -
@Kardon63 - 它适用于 url
http://google.com。所以它一定是我的服务......奇怪的是它从浏览器加载得很好。 -
这听起来更有可能是环境问题。如果您尝试将
System.Net.Ping改为myComputer.myDomain.net,会发生什么情况?
标签: c# asp.net-core asp.net-core-3.1