我正在C#/。NET中创建一个小型Web api,从某种意义上说,必须从外部API请求一些数据。当我在本地计算机上进行测试时,它运行正常。
但是当将它部署在远程虚拟主机上(我正在使用Ionos / 1&1 Web Windows托管解决方案)时,为了测试我的应用,我会从自己的API中收到此错误消息:
连接尝试失败,因为连接方在一段时间后未正确响应,或者建立的连接失败,因为连接的主机未能响应{ip}
这里是调用API并获得响应的代码
Uri myUri = new Uri("url", UriKind.Absolute);
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(myUri);
using (HttpWebResponse response = (HttpWebResponse)request.GetResponse())
{
using (Stream stream = response.GetResponseStream())
using (StreamReader reader = new StreamReader(stream))
{
string result = reader.ReadToEnd();
return JsonConvert.DeserializeObject<ModelOfResult>(result);
}
}
是代理问题吗?代码问题?托管问题?
对不起,我的英语不好,谢谢你,谢谢
似乎是代理问题。请尝试在您的web.config中添加此代码:
<system.net>
<defaultProxy enabled="false" >
</defaultProxy>
</system.net>
感谢Ionos的支持,通过添加以下代码,我设法获得了代理以使其正常工作
request.Proxy = new WebProxy({proxy}, {proxy_port});
如果有任何问题,请尝试使用TheGunners的解决方案,或要求您的提供者为您提供代理
很遗憾我必须要它,但是嘿,它现在正在工作