我从服务器端读取pdf文件后,要以浏览器直接打开文件,而非通过下载后打开,代码如下:

因为两个服务器配置不同,一个是Windows server 2012 DataCenter,IIS8.0,一个是Windows server 2016 DataCenter,IIS10.0。代码在Win2012服务器上能够完美工作,如下:

但在Win2016服务器上却不行,代码执行完毕,浏览器不显示任何内容,亦无错误信息,反复刷新也一样,求解,谢谢!
我从服务器端读取pdf文件后,要以浏览器直接打开文件,而非通过下载后打开,代码如下:

因为两个服务器配置不同,一个是Windows server 2012 DataCenter,IIS8.0,一个是Windows server 2016 DataCenter,IIS10.0。代码在Win2012服务器上能够完美工作,如下:

但在Win2016服务器上却不行,代码执行完毕,浏览器不显示任何内容,亦无错误信息,反复刷新也一样,求解,谢谢!
关注让阿豪来帮你解答,本回答参考chatgpt3.5编写提供,如果还有疑问可以评论或留言问题分析: 根据代码和现象的描述,可以初步得出以下分析:
try
{
string filePath = "test.pdf";
Response.ContentType = "application/pdf";
Response.AddHeader("Content-Disposition", "inline;filename=" + filePath);
Response.WriteFile(filePath);
Response.End();
}
catch (Exception ex)
{
Response.Write("Error: " + ex.Message);
Response.End();
}
其中,filePath是要打开的文件路径,文件类型为pdf;Response.ContentType设置为"application/pdf",AddHeader方法中的"Content-Disposition"参数设置为"inline",表示在浏览器中直接打开文件;异常处理中输出错误信息,便于定位问题。