C# FileStream在HTTP上成功,在HTTPS上失败

C# FileStream在HTTP上成功,在HTTPS上失败,c#,asp.net,asp.net-web-api,C#,Asp.net,Asp.net Web Api,该代码是一个简单的WebAPI操作,它将文件作为附件流回 服务器:(Web API控制器操作)(类型:HttpResponseMessage) 如果我在Chrome中发出请求,服务器端在HTTP模式下执行良好,并返回我的文件。一切正常 但是如果我通过HTTPS执行此操作,服务器端将完成下载,然后UI将挂起下载文件,直到文件最终超时,chrome输出: GET https://localhost/mysite/api/GetFile?file=ABC net::ERR_CONNECTION_RES

该代码是一个简单的WebAPI操作,它将文件作为附件流回

服务器:(Web API控制器操作)(类型:HttpResponseMessage)

如果我在Chrome中发出请求,服务器端在HTTP模式下执行良好,并返回我的文件。一切正常

但是如果我通过HTTPS执行此操作,服务器端将完成下载,然后UI将挂起下载文件,直到文件最终超时,chrome输出:

GET https://localhost/mysite/api/GetFile?file=ABC net::ERR_CONNECTION_RESET
我做错了什么?我是否必须启用其他功能才能通过HTTPS/SSL执行此操作


注释;该文件只有大约50k大小,因此大小不是问题。

解决方案

此错误似乎是由删除以下内容引起的:

result.Content.Headers.ContentLength = stream.Length;

删除此项修复了此问题。不知道为什么它是通过HTTP而不是HTTPS工作的

通过SSL执行其他控制器操作的效果与预期一致?是。所有其他操作都按预期完成,如果在其他浏览器或fiddler中点击,您会看到什么错误?我发现chrome错误屏幕没有什么帮助,其他屏幕有时会提供更好的信息。
result.Content.Headers.ContentLength = stream.Length;