内置 Chrome PDF 查看器不会为经过身份验证的用户完全加载大型 PDF 文件。
在我的环境中重现的步骤:
- 在 Visual Studio 2019 中创建一个具有身份验证的新
WebForms项目Individual User Accounts - 在
solution explorer创建一些文件夹,例如MyPDFs并放入一些大的pdf 文件中。 使用以下命令保护此文件夹
web.config:<location path="MyPDFs"> <system.web> <authorization> <deny users="?" /> </authorization> </system.web> </location>并为此测试目的设置
runAllManagedModulesForAllRequests为true:<modules runAllManagedModulesForAllRequests="true">使用 IISExpress 运行此站点并导航到
~/MyPDFs/A17_FlightPlan.pdf在我的情况下https://localhost:44302/pdfs/A17_FlightPlan.pdf当您从 中删除授权规则
web.config或将 PDF 文件放到其他位置时,它会正确加载我可以在生产中重现相同的行为 - 完整的 IIS
其他浏览器也能正常工作:FireFox、EDGE 甚至 Chrome,替换为 Adobe Acrobat 阅读器扩展的内置 PDF 查看器
问题可能出在哪里?标头正常吗?

