我在Azure中有两个Web API应用程序(应用程序服务资源): app1 和 app2 。我正在尝试从 app1 向{em> app2 发送https
请求,但是连接失败并出现以下错误:
”发送请求时发生错误。无法读取数据 从传输连接中:强制执行现有连接 由远程主机关闭”
当我在本地开发机上运行app1(例如从VS 2017
运行)时,我可以毫无问题地连接到Azure中的app2。
我使用以下代码POST
从 app1 到 app2 的请求:
using (HttpClient client = new HttpClient())
{
HttpResponseMessage response = await client.PostAsync(uri, stringContent);
}
答案 0 :(得分:0)
该错误表示连接成功,但是API出了点问题。根据我过去的经验,当API的主机内存不足而CPU占用过多时,我就遇到了这个问题。上面的某些项目可能会导致这种情况。
尝试使用空字符串参数调用API。
答案 1 :(得分:0)
我遇到了同样的情况(App Service A调用App Service B),最后发现了问题。
在App Service B的SSL设置中,我不得不将Minimum TLS Version
降低到1.0。
当然最好让App Service A使用更高的TLS版本,但是我不确定如何设置它。
答案 2 :(得分:0)
事实证明您不能使用该服务的默认地址。它使用azuresites.net SSL证书,但我无法使用。一旦创建了自己的url和ssl证书,它就可以正常工作。