C#的cs文件中Response.Clear();Response.ClearHeaders()的作用
答案:4 悬赏:20
解决时间 2021-01-27 12:58
- 提问者网友:謫仙
- 2021-01-26 19:39
C#的cs文件中Response.Clear();Response.ClearHeaders()的作用
最佳答案
- 二级知识专家网友:往事埋风中
- 2021-01-26 20:19
并非必须的 ,倘若你在调用
Response.WriteFile(pictureFilename);
之前还向缓冲区中写入过数据例如调用过:Response.Write("abc"); 并且你还希望浏览器能够将这个图片正常的显示,这时你就需要Response.Clear();了
如果不Response.Clear();那么图片将可能无法正常的显示为什么呢?
原因是这样的,首先你想要告诉客户端这个响应内容的类型为image/jpeg
你是通过Response.AppendHeader("content-type", "image/jpeg"); 申明的。
然后能当客户端得到这个响应数据时也将会将这些数据按照image/jpeg
来解释,但是由于你前面掉用了Response.Write("abc"); 因此客户端实际上得到的内容为 <字符:abc>+<图片的数据> 这样客户端得到的数据实际上不仅仅是图片的数据但是由于你声明的“content-type”强调了这些数据应该按照image/jpeg来解释 最终导致的结果就是图片不能正常的解码 所以在Response.WriteFile(pictureFilename);
之前先调用Response.Clear();较为保险
Response.WriteFile(pictureFilename);
之前还向缓冲区中写入过数据例如调用过:Response.Write("abc"); 并且你还希望浏览器能够将这个图片正常的显示,这时你就需要Response.Clear();了
如果不Response.Clear();那么图片将可能无法正常的显示为什么呢?
原因是这样的,首先你想要告诉客户端这个响应内容的类型为image/jpeg
你是通过Response.AppendHeader("content-type", "image/jpeg"); 申明的。
然后能当客户端得到这个响应数据时也将会将这些数据按照image/jpeg
来解释,但是由于你前面掉用了Response.Write("abc"); 因此客户端实际上得到的内容为 <字符:abc>+<图片的数据> 这样客户端得到的数据实际上不仅仅是图片的数据但是由于你声明的“content-type”强调了这些数据应该按照image/jpeg来解释 最终导致的结果就是图片不能正常的解码 所以在Response.WriteFile(pictureFilename);
之前先调用Response.Clear();较为保险
全部回答
- 1楼网友:未来江山和你
- 2021-01-26 22:45
我整个页面都输出
- 2楼网友:不想翻身的咸鱼
- 2021-01-26 21:48
HttpResponse.Clear():清除缓冲区流中的所有内容输出。但不清除标头信息(head里的内容)。
HttpResponse.ClearHeaders():清除缓冲区流中的所有头。清除缓冲区中head中的内容。清除后可以再使用Response属性一些属性去重新设置页面的meta属性或者head标签中的内容。
HttpResponse.ClearHeaders():清除缓冲区流中的所有头。清除缓冲区中head中的内容。清除后可以再使用Response属性一些属性去重新设置页面的meta属性或者head标签中的内容。
- 3楼网友:像个废品
- 2021-01-26 21:29
Response.Clear()方法 Clear方法删除所有缓存中的HTML输出。但此方法只删除Response显示输入信息,不删除Response头信息。 Response.ClearContent()方法 ClearContent与Clear方法区别就是ClearContent方法不仅删除Response显示输出信息而且还删除Response头信息 Response.ClearHeaders()方法 ClearHeaders方法只删除头信息,而不删除Response显示输出信息
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯
• 手机登qq时,显示手机磁盘不足,清理后重新登 |
• 刺客的套装怎么选啊? |